2

API に対して JSONP 呼び出しを実行しようとしていますが、API が JSONP をサポートしているかどうかはわかりません。それをテストする方法もわかりません。ただし、以下は、無効なラベルである firebug コンソール エラーを示しています。これは、API が JSONP をサポートしていないことを意味しますか?これは私の呼び出しに問題があります。

これがAPIへの私の呼び出しです。クライアントが私が URL を提供することに満足しないため、私は URL を変更しました

    jQuery.getJSON("http://blaa.blaa.com/api/services?format=js&callback=?",
    function (data) {
        console.log("services data = ", data);
    });

firebugでテストすると、この無効なラベルが表示されます

{"services":{"service":[{"name":"tt"...

servic...2711124 (line 1, col 1)
4

1 に答える 1

2

Invalid labelJSONPコンテンツ(つまり、Javascriptコード)として提供されると期待されるものが実際にはJSONコンテンツである場合に発生するエラーです。

これはJSONオブジェクトですが、有効なJavascriptではありません。

{'foo' : 'bar'}

これは、がオブジェクトリテラルではなく、ブロック{の開始として扱われるためです。次に、ラベルを作成する試みとして扱われます。この場合、周囲に引用符を付けることは無効です。'foo'

これは基本的に、サーバーがJSONPを理解していないこと、またはJSONPを適切に要求していないことを通知する不可解なメッセージとして機能します(一部のサーバーは標準を超える追加のパラメーターを要求しますcallback=)。

于 2012-06-07T16:01:23.760 に答える