Web サイト (特に Yummly) からいくつかの API データを取得しようとしていますが、JSONP 要求を実行しようとすると JSON データを受け取るように見えます。これにより、「Uncaught SyntaxError: UnexpectedToken:」が発生します。
これを行おうとするコードは次のとおりです。
var keywords = $('#input-text').val();
var url = "http://www.yummly.com/api/recipesq="+keywords+"&_app_id=<snipped-app-id>&_app_key=<snipped-api-key>&";
$.ajax({
type: 'GET',
url: url,
dataType: 'jsonp',
//dataType: 'jsonp json'
success: function() { console.log('Success!'); },
error: function(data, data2) { console.log(data); },
//jsonp: false,
//jsonpCallback: 'recipeGet'
});
});
dataType をオーバーロードして JSONP から JSON に変換しようとしましたが、上記と異なる結果にはなりませんでした。コールバック関数も変更しようとしましたが、構文エラーを受け取ったときに関数に行きません。JSONP を使用せず、JSON のみを使用すると、「XMLHttpRequest は Origin を読み込めません。Access-Control-Allow-Origin では許可されていません。」というメッセージが表示されます。
何か助けていただければ幸いです。私はこれにかなり苦労してきました。