私は作成中のAPIからJSONを取得するためにファイル内のgetJSON関数を使用していますが、何らかの理由でgetJSONが常にエラーハンドラに入ります。 javascriptのコードはここにあります。これは常に.error関数に入ります。jQuery getJSONがエラーをスローしていますか?
window.onload = function()
{
var data = "store_id=5";
$.getJSON('http://localhost:81/javascript_plugin/get_store_items', data,
function(json) {
alert(json);
})
.success(function() { alert("second success"); })
.error(function() { alert("error"); })
.complete(function() { alert("complete"); });
}
私はapi側のものにCakePHPを使用しています。返されるファイルは以下のとおりです。 $ content_for_layoutには、 "echo $ js-> object($ json);を呼び出して作成されたJSONオブジェクトが含まれています。 javascriptエンジンとしてjQueryを使用しています。 $ jsonはCakePHP find呼び出しの結果です。
<?php
header("Pragma: no-cache");
header("Cache-Control: no-store, no-cache, max-age=0, must-revalidate");
header('Content-Type: text/x-json');
header("X-JSON: ".$content_for_layout);
echo $content_for_layout;
?>
応答コードが200で、ヘッダに表示されているものがすべて含まれていますが、応答タブは空です。どんな助けもありがとう。
おかげ
content-typeを使用してみましたか?application/json?これはjsonの標準的なコンテンツタイプです。 – scrappedcola
PHPファイルが何も返されない場合、getJSONはエラーをスローします(そこにはJSONがないため) – thedaian
'$ content_for_layout'が確実に設定されていますか? –