jQuery ajax를 사용하여 제 3 자 웹 페이지를 호출하고 있습니다. 그들의 페이지에 따르면 그들은 로그인 성공의 경우 상태 코드 200을, 로그인 실패의 경우 401을 보냈습니다. 다음은 jquery 코드 샘플입니다. 이 코드는 IE에서는 잘 작동하지만 Chrome이나 Firefox에서는 작동하지 않습니다. 무엇이 문제 일 수 있습니까?jQuery ajax handle 401 Unauthorized
$.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
});
나는 모든 기능 오류, 성공, 완료 및 statusCode를 시도했습니다. 그들 중 아무도 401 오류를 처리하지 못합니다.
은 방화 광에서 요청/응답 OK입니까? – skafandri
IE와 Chrome에서 보낸 데이터는 무엇입니까 ('console.log')? ID가'inp_user_name' 또는'inp_user_pwd' 인 요소가 여러 개 있지 않습니까? 'cache : false' 옵션을 추가하십시오. 또한'data : ([...])'줄에서 괄호를 제거 할 수 있습니다. 또한 HTML 코드를 사용합니까? 어떤 유형의 요소가 "inp_user_xxx"입니까? – pomeh
아니요. 모든 것이 요청에 따라 잘 작동합니다. 올바른 암호를 전달하면 상태 코드 200에 문제가 없습니다. 그리고 내가 틀린 암호를 보낼 때 응답 코드 401을받습니다. 나는 그것이 401 일 때 그것을 포착하고 싶다. 그러나 어떤 기능도 그것을지지하지 않는다. 나는 모든 기능 오류, 성공, 완료 및 statusCode를 시도했다. 내 요구 사항은 401 오류를 잡는 것입니다. 멈추지 말아라. –