1

ここから json ファイルを取得する必要があります。

https://raw.github.com/Yelp/yelp-api/master/category_lists/en/category.json

ただし、次のエラーが表示され続けます。

リソースはスクリプトとして解釈されますが、MIME タイプ text/plain で転送されます

私は次のようにしてファイルを取得しようとしています:

$.ajax({
    url : 'https://raw.github.com/Yelp/yelp-api/master/category_lists/en/category.json',
    dataType : 'jsonp',
    success: function (data) {
        alert("here");
    },
    error: function () { alert("Error reading category.json");}
});

これを回避する方法はありますか?ありがとう。

4

1 に答える 1

2

そのResponse Headersコンテンツが受信した番組は

Content-Type: text/plain; charset=utf-8

JSONそして、コードが URL からの応答を期待していること。それが、そのエラーが発生する理由です。

解決:

できることの 1 つは、応答を as としてロードし、後でそれをオブジェクトtext/plainに変換することです。json

var obj = $.parseJSON(yourString);

更新されたコード:

独自のドメインからリモート応答をロードすることで、Access-Control-Allow-Origin エラーを回避できます。これはプロキシ サーバーとして機能し、リモート リソースをロードします。

$.ajax({
    url : url, // url on your domain, that will load the remote response for you
    dataType : 'html', // load the response as plain/html
    success: function (data) {
        var obj = $.parseJSON(data); // convert the received response to a JSON object
    }
});​
于 2012-12-07T09:23:01.120 に答える