>  기사  >  백엔드 개발  >  javascript - ajax는 성공하지 않고 오류만 발생하며 요청 상태 코드는 200입니다.

javascript - ajax는 성공하지 않고 오류만 발생하며 요청 상태 코드는 200입니다.

WBOY
WBOY원래의
2016-09-11 11:34:081304검색

어떻게 해결하나요? 다른 도메인 이름을 옮겨도 괜찮지만 이 도메인 이름은 작동하지 않습니다. 프런트엔드 코드는 다음과 같습니다.

javascript - ajax는 성공하지 않고 오류만 발생하며 요청 상태 코드는 200입니다.

백엔드 코드는 다음과 같습니다.

javascript - ajax는 성공하지 않고 오류만 발생하며 요청 상태 코드는 200입니다.

javascript - ajax는 성공하지 않고 오류만 발생하며 요청 상태 코드는 200입니다.

답글 내용:

어떻게 해결하나요? 다른 도메인 이름을 옮겨도 괜찮으나 이 도메인 이름이 멈췄습니다. 프런트엔드 코드는 다음과 같습니다.

javascript - ajax는 성공하지 않고 오류만 발생하며 요청 상태 코드는 200입니다.

백엔드 코드는 다음과 같습니다.

javascript - ajax는 성공하지 않고 오류만 발생하며 요청 상태 코드는 200입니다.

javascript - ajax는 성공하지 않고 오류만 발생하며 요청 상태 코드는 200입니다.

인터페이스가 콜백을 처리하지 않죠?

작성이 정확하며, 서버에서 jsonp 형식이 아닌 다른 형식을 반환하여 콜백 처리에 실패한 것으로 추정됩니다.
$.ajax의 기본 jsonp 콜백 매개변수는 ?callback=_XXXX입니다. 백그라운드 처리 및 반환이 올바른지 확인하세요.

서버에서 반환한 값이 잘못되었습니다. null 값을 반환하고 있는 것 같습니다. {"result":"successful"} 같은 것이 있으면 시도해 보세요.

자바스크립트: 추가

<code class="javascript">$.ajax({
    ....
    jsonp:'jsonp_callback',  <- 指定callback回调函数名
    ....
})</code>

jQuery는 AJAX GET을 사용하여 /url/?callback=jsonp_callback URL
을 요청한 다음 jsonp_callback(result) JavaScript 콜백

을 실행합니다.
<code class="php">function(){
    return string;
}</code>

JavaScript가 수신하는 것은 문자열 유형의 출력입니다. JSON이 아닙니다. JSON이 아니면 DIE입니다.

<code class="php">function (){
    // 这里是callback还是jsonp_callback忘了。具体百度一下
    return $_GET['callback']."(".json_encode($string).")";
    // 实际返回并输出的将会是:  `jsonp_callback("string")`
}</code>

업데이트

javascript - ajax는 성공하지 않고 오류만 발생하며 요청 상태 코드는 200입니다.

사진을 보고 대화해보세요.
Ajax 요청 주소는 http://baidu.com
실제 요청 주소는 http://baidu.com/?callback=xxxxxxx&_=xxx&_=xxxx

입니다.

콘텐츠를 반환하는 대신 숫자를 사용하는 것은 어떨까요?

dataType이 반환 값과 일치하지 않습니다. 이 매개변수를 제거하고 jquery가 반환 값을 자동으로 인식하도록 하는 것이 좋습니다.
게다가 이건 jsonp가 아니죠?

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.