어떻게 해결하나요? 다른 도메인 이름을 옮겨도 괜찮지만 이 도메인 이름은 작동하지 않습니다. 프런트엔드 코드는 다음과 같습니다.
백엔드 코드는 다음과 같습니다.
어떻게 해결하나요? 다른 도메인 이름을 옮겨도 괜찮으나 이 도메인 이름이 멈췄습니다. 프런트엔드 코드는 다음과 같습니다.
백엔드 코드는 다음과 같습니다.
인터페이스가 콜백을 처리하지 않죠?
작성이 정확하며, 서버에서 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>
업데이트
사진을 보고 대화해보세요.
Ajax 요청 주소는 http://baidu.com
실제 요청 주소는 http://baidu.com/?callback=xxxxxxx&_=xxx&_=xxxx
콘텐츠를 반환하는 대신 숫자를 사용하는 것은 어떨까요?
dataType이 반환 값과 일치하지 않습니다. 이 매개변수를 제거하고 jquery가 반환 값을 자동으로 인식하도록 하는 것이 좋습니다.
게다가 이건 jsonp가 아니죠?