2

我正在尝试对 api 进行 JSONP 调用,但我不确定 API 是否支持 JSONP,不知道如何测试。但下面显示了无效标签的萤火虫控制台错误。这是否意味着 api 不支持 JSONP 是不是我的电话有问题。

这是我对 api 的调用。我更改了网址,因为客户不乐意我提供网址

    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 label是当您期望作为 JSONP 内容(即 Javascript 代码)提供的内容实际上是 JSON 内容时您将得到的错误。

这不是有效的 Javascript,即使它是一个 JSON 对象:

{'foo' : 'bar'}

这是因为{被视为的开头,而不是对象文字。'foo'然后被视为尝试创建label,其中包含周围的引号是无效的。

这本质上是一条神秘的消息,告诉您服务器不理解 JSONP,或者您没有正确请求它(有些服务器要求提供超出标准的额外参数callback=)。

于 2012-06-07T16:01:23.760 回答