그래서 나는 ajax 요청에서 json 응답을 파싱하려고 시도 JSON.response
하지만 작동하지 않습니다.
내 API의 json 응답 예는 다음과 같습니다.
{"cn":"3335621215844","status":5,"proxy":"207.154.231.213:8080","error":"Received HTTP code 400 from proxy after CONNECT"}
다음은 broswer 디버그의 오류입니다.
Uncaught SyntaxError: Unexpected token o in JSON at position 1
at JSON.parse (<anonymous>)
내 코드는 다음과 같습니다.
function cn_doCheck() {
var proxy_counter = 0;
var cn_list = $("#cn_input").val().split('\n');
var proxy_list = $("#proxy_input").val().split('\n');
var i=0;
if (cn_list!="" && proxy_list!="") {
$.each(cn_list, function(index, value){
if (i>proxy_list.length) {
i=0;
}
$.ajax({
type : 'post',
data : {
cn: value,
proxy: proxy_list[i]
},
url : 'api_test.php',
async : true,
beforeSend: function(response){
$("#loader").empty();
$("#loader").append("Checking "+cn_list.length+" in total");
},
success: function(response){
},
complete: function(response){
var result = JSON.parse(response);
$("#cn_live").append(result.cn+"|"+value+"|"+proxy_list[i]+"\n");
i++;
}
});
});
}else{
alert("Card/Proxy list can't be empty!");
}
}
응답 은 이미 문자열이 아닌 JavaScript 객체 인 것 같습니다 . 다시 구문 분석 할 필요가 없습니다.
업데이트 : Ajax success()
는 웹 서버가 200 OK HTTP 헤더로 응답하는 경우에만 호출됩니다. 기본적으로 모든 것이 정상일 때입니다. 경우로, complete()
아약스 호출이 성공 또는 아니었다면에 관계없이 항상 호출되지 얻을 것이다 - 아마 오류를 출력하고 오류를 반환 - complete()
여전히 전화를받을 것입니다.
success
원치 않는 시나리오를 피하기 위해 콜백 내에서 코드를 실행하십시오 .
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다