WebサイトのAPIからJSONを取得するためのGETリクエストを設定しました。コンソールのネットワークタブと200のステータス(写真が添付されている)に正しく応答しているにもかかわらず、エラーになります。私は、バリデータを介してJSONレスポンスを実行し、それは正常にチェックアウトします。何が問題ですか?応答を得てもAJAX GET要求がエラーになる
$(document).ready(function() {
console.log("ready!");
bindProject();
});
function bindProject() {
$(".project-link").on("click.project", function() {
console.log("clicked");
var id = $(this).data("id");
var $this = $(this);
loadProject(id, function() {
$("#previous, #next").show();
})
});
}
function loadProject(id, callback) {
$.get(BASE + "api/page/projects/" + id, {}, function(data) {
if (data.success == "true") {
console.log("success");
$("#project-info").attr("projectid", id);
$("#project-title").html(data.title);
$("#project-info").html(data.info);
$("#project-year").html(data.info);
$("#project-tags").html(data.tags);
setProject();
else {
console.log("error")
}
}, "json")
}
あなたはそれがconsole.log( 'error')か....という意味ですか? – Taplar
また、注意すべきことは、要求に「json」を含めることです。つまり、空のオブジェクトまたは配列であっても、応答は有効なjsonを返さなければなりません。無効なjsonを返すか、jsonを全く返さないと、$ .getが期待通りに正しく解析できないため、エラー処理に移ります。 – Taplar
おそらく、 'data'に' 'true '' value'を持つ ''成功 '' key'がありません。それが理由です。あなたが提供する 'function()'全体は、成功すれば実行されます...これは成功コールバックです。要求が成功したかどうかを確認する必要はありません。 [documentation](https://api.jquery.com/jquery.get/) –