मैं विंडो को अनलोड होने पर डेटाबेस में कुछ अनुरोध भेजने की कोशिश कर रहा हूं (यानी जब आप पृष्ठ को रीफ्रेश करते हैं)। कुछ कारणों से, केवल सफारी पर, क्लाइंट साइड कोड निष्पादित हो जाता है, लेकिन सर्वर के लिए अनुरोध कभी भी नहीं जाता है। जब मैं डीबगर में मैन्युअल रूप से कोड के माध्यम से कदम उठाता हूं, तो सर्वर अनुरोध प्राप्त करता है और इसे ठीक करता है।सफारी सर्वर पक्ष पर रीफ्रेश/ऑनबेरनलोड पर कॉलबैक फ़ंक्शन नहीं चलाता है (क्लाइंट साइड कोड पर कॉल करता है)
कोई भी जानता है कि यह क्यों हो रहा है?
window.onbeforeunload = function() {
console.log("inside on before unload");
var requestParam = new a.ListRequest();
requestParam.setAction('set_delete');
var callback = function(isSuccess, response) {
if (isSuccess) {
//do something
} else {
// do something else
}
};
// Sends request to server
a.Fetch.list(requestParam, callback);
}
अपना कोड देखे बिना, एकमात्र अनुमान मैं दे सकता हूं .. आपके पास आपके कोड में एक बग है। –
हालांकि यह क्रोम और फ़ायरफ़ॉक्स पर काम करता है। मैं कुछ नमूना कोड भी जोड़ूंगा – petranaya
आप सर्वर पर क्या भेजते हैं? इसके अलावा आप इसे क्यों पहले से भेजना चाहते हैं? –