0

我正在尝试使用 getJson 读取 url。它既不会触发成功功能,也不会触发错误功能。

var url = "http://demo.dreamacc.com/TextTable.json?callback=?";
            $.ajax({
                type: 'GET',
                url: url,
                async: false,
                jsonpCallback: 'jsonCallback',
                contentType: "application/json",
                dataType: 'jsonp',
                success: function (ooo) {
                    alert('hi');
                    alert(ooo);
                },
                error: function () {
                    alert('w');
                }
            });

但是当我试图阅读这个网址时

http://api.twitter.com/1/statuses/user_timeline/codinghorror.json?callback=?

它运作良好

4

1 回答 1

4

端点(您请求的 URL,http://demo.dreamacc.com/TextTable.json)不支持 JSONP 返回。

您将无法使用 JSONP 请求从本网站检索数据。


JSONP 通过指定远程服务器将 JSON 对象包装在函数调用中来工作(函数名称通过callbackGET 参数定义)。如果端点不支持这一点并适当地修改其响应,您将无法使用 JSONP 从该站点检索数据。

例子:

Twitter(支持 JSONP): [普通 JSON | JSONP ]

demo.dreamacc(不支持 JSONP): [普通 JSON | JSONP 不起作用]

如您所见,demo.dreamacc.com 端点没有将响应包装在函数调用中。

于 2013-02-03T14:32:25.497 回答