मैं jQuery AJAX का उपयोग करके तृतीय पक्ष वेब पेज पर कॉल कर रहा हूं। लॉग इन सफलता और 401 अगर लॉग-इन असफल होने पर उनके पृष्ठ के अनुसार उन्होंने मुझे स्टेटस कोड 200 भेजा। यहां मेरा jQuery कोड नमूना है। यह कोड IE पर ठीक काम करता है लेकिन क्रोम या फ़ायरफ़ॉक्स पर काम नहीं करता है। मामला क्या हो सकता है?jQuery AJAX हैंडल 401 अनधिकृत
$.ajax({
type: 'GET',
url: hostURL + 'j_teo_security_check?callback=?',
dataType: 'json',
data: ({j_username : $("#inp_user_name").val(), j_password: $("#inp_user_pwd").val()}),
statusCode: {
401:function() { alert("401"); },
404:function() { alert("404"); },
200:function() { alert("200"); },
201:function() { alert("201"); },
202:function() { alert("202"); }
},
complete: function(httpObj, textStatus){
alert(httpObj.status);
},
error: function(){
alert("error");
},
async: false
});
मैंने सभी कार्यों की त्रुटि, सफलता, पूर्ण और स्थिति कोड की कोशिश की। उनमें से कोई भी 401 त्रुटि संभाल नहीं।
फायरबग पर अनुरोध/प्रतिक्रिया ठीक है? – skafandri
आईई और क्रोम ('console.log' उन्हें) पर भेजा गया डेटा क्या है? क्या आपके पास आईडी 'inp_user_name' या' inp_user_pwd' आईडी के साथ कई तत्व नहीं हैं? 'कैश: झूठा' विकल्प जोड़ने का प्रयास करें। साथ ही, आप 'डेटा: ([...])' रेखा पर ब्रांड्स को हटा सकते हैं। साथ ही, क्या आपके पास HTML कोड का उपयोग किया गया है? वे "inp_user_xxx" किस प्रकार के तत्व हैं? – pomeh
नहीं। सब कुछ अनुरोध के साथ ठीक काम करता है। जब मैं सही पासवर्ड पास करता हूं तो स्टेटस कोड 200 के साथ कोई समस्या नहीं है। और जब मैं गलत पासवर्ड भेजता हूं तो यह प्रतिक्रिया कोड 401 प्राप्त करता है। मैं 401 होने पर इसे पकड़ना चाहता हूं। लेकिन कोई भी कार्य इसका समर्थन नहीं करता है। मैंने सभी कार्यों की त्रुटि, सफलता, पूर्ण, और स्थिति कोड की कोशिश की। मेरी आवश्यकता 401 त्रुटि पकड़ने के लिए है। इसे रोकने के लिए नहीं। –