Express, React, Ajax, Plivo kullanıyorum.Ekspres + Plivo: Ajax POST isteği başarısız oluyor ama yine de telefonuma iki kez aynı sms aldım
Verileri (kullanıcı telefon numarası ve metin mesajı) istemciden ekspres sunucuma gönderen bir ajax POST isteğim var. Gönderiyi gönderdiğimde telefonuma metin mesajı aldığımda chrome dev araçlarını kontrol ettiğimde istek durumunun beklemede olduğunu (sunucuda 202
durumu olarak kaydeder) bir süre sonra istek durumu Chrome dev araçları üzerinde failed
. Ben POST isteğinde bulunurken hemen sonra sms olsun ama iki kez gönderilen eğer istek 4 dakika boyunca beklemede kalır fark
Status: 202
API Response:
{ api_id: 'api-id-string',
message: 'message(s) queued',
message_uuid: [ 'random message_uuid string' ] }
POST/- - ms - -
Status: 202
API Response:
{ api_id: 'api-id-string',
message: 'message(s) queued',
message_uuid: [ 'random message_uuid string' ] }
POST/- - ms - -
:
Bu benim sunucu günlüklerinde elde ediyoruz. Demek istediğim, eğer istek 2 dakika geçerse, metin mesajını tekrar alırım ve istek 3.9 dakika içinde başarısız olur. Sms bir kez olsun, istek 2 dakika başarısız olur. Yani her 2 dakikada bir POST/- - ms - -
elde ettiğimi tahmin ediyorum, yani sunucu isteği tamamlamak için çalışmayı durdurduğunda, bunu tamamlamak için yeniden denemeyi ve yeniden sms göndermeyi deniyor.
Yukarıdaki resimde iki POST isteği, iki farklı kısa mesaj gönderdim. İlk olarak, başarısız olmak için yaklaşık 4 dakika sürdü, bunun için aynı sms iki kez aldım. İkincisi başarısız olmak için 2 dakika sürdü, bir kez bunun için sms aldım.
Diğer cevaplara bakıyordum ve birçok kişi için istek iki kez favicon nedeniyle gönderiliyormuş gibi görünüyor, fakat benim durumumda, url isteğini günlüğe kaydetme konsolunda ve url her ikisi için de aynı. Ayrıca başka bir istekte bulunmamakla birlikte, bu soruyu yinelenen bir şey olmaması için talebi yeniden denemek gibi görünüyor. yani benim ayıklama beceri iyi olsa da olmasa çok deneyimli değilim
$.post('/', {
number: this.state.number,
message: this.state.message
});
: ajax POST isteği
app.post('/', function(req, res) {
console.log(req.url);
p.send_message({
src: plivoNumber,
dst: '1'+req.body.number,
text: req.body.message,
}, function(status, response) {
console.log('Status:', status);
console.log('API Response:\n', response);
});
});
Bu edilir:
Bu
benim sunucuda var koddur belki de yeni bir hata yaptım.
Çok basit bir şeydi! Haha çok teşekkür ederim! Bu çalıştı :) – corasan