javascript - 使用 Jsonp 的 Bing 搜索 API 不起作用,标签无效

标签 javascript jquery json jsonp bing

在处理 Bing 的 json 请求(bing 搜索,而不是 map )时,我收到一条错误提示“无效标签”

我的查询地址是:

var bingurl="http://api.search.live.net/json.aspx?Appid=##APIKEY##&query=Honda&sources=web";


 $.ajax({
            type: "GET",
            url: bingurl,
            data: "{}",
            contentType: "application/json; charset=utf-8",
            dataType: "jsonp",
            success: function(data) {

                $callBack(data);
            },
            error: function(msg) {
                alert("error" + msg);
            }
        });

Firebug 报告“无效标签”,然后转储 json 响应。

不知道哪里出了问题?帮助表示赞赏。

最佳答案

您发布的 Bing API URL 不是 JSONP,而是纯 JSON。

JSONP 被解释为原始 JavaScript,在这种情况下,JSON 对象的 {"something": ... 语法不是对象文字,而是带有名称包含引号的标签的 block 语句 (因此无效)。

As I understand it ,如果你想要来自 Bing 的 JSONP,你必须通过传入参数 ...&JsonType=callback&JsonCallback=(全局回调函数的名称)来告诉它。

(我也不确定 data: "{}" 会做什么,但我认为没有什么好处。)

关于javascript - 使用 Jsonp 的 Bing 搜索 API 不起作用,标签无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2829750/

相关文章:

javascript - 用户输入月份的第一天和最后一天

javascript - 匹配除\(\d\) 之外的所有内容

javascript - 如何通过jquery从sevlet接收信息而不发送请求

javascript - 即使未触发事件,jQuery UI 的对话框也是可见的

json - 在centos上安装perl-JSON

javascript - 变量值没有被清除

javascript - 使用子列表 javascript 遍历列表

javascript - MVC - 在ajax调用中操作Jquery插件属性

json - 通过身份引用对象的标准方式(例如,循环引用)?

javascript - 如何替换或更改函数 WebForm_OnSubmit()