0

クロスドメインでàjsonファイルのデータを保持しようとしています。だから私はjsonpを使用していますが、ファイルの拡張子は.jsなので、dataType:'jsonp'で$.ajaxを試してみると、コンソールでエラーが発生します:Uncaught SyntaxError:Unexpected tokenファイルはjavascriptファイルとして解釈され、リクエストは失敗します。このエラーなしでデータを取得するためのアイデアがありますか。

$.ajax({
    url : 'http://domaine.com/file.js',
    contentType: "application/json; charset=utf-8",
    dataType : 'jsonp',
    success : function(data){
        console.log(data);
        // no enter in this callback
    },
    complete: function(data1, data2, data3){
        // no data from file.js
    }
});

ロードされているスクリプトのページを調べたときにfile.jsが見つかりましたが、すべての情報を見ることができますが、JavaScriptファイルと見なされるためエラーが発生します。

ご協力いただきありがとうございます。

4

1 に答える 1

0

json を適切な jsonp に変換します

jsonpcallback({"this":"is","my":"json"})

次に、指定されたコールバックでリクエストします。

<script>
    function jsonpcallback(data) {
        console.log(data);
    }
</script>
<script src="http://domain.com/file.js"></script>

もちろん、jQuery でも実行できます。

$.ajax({
    url: "http://domain.com/file.js",
    dataType: "jsonp",
    jsonpCallback: "jsonpcallback",
    success: handler,
    complete: handler,
    error: handler
});
于 2012-08-23T14:39:16.987 に答える