0

我试图让 $.getJSON 回调为返回 json 而不是 jsonp 数据的 api 工作。如何改变这个工作。

$.getJSON("http://url&callback=?", function(response){ alert("hi");  });
4

2 回答 2

2

最近,我处理了类似的问题,以使用生成 JSON 响应的 twitter API 调用获取 URL 的 twitter 计数。

查看下面的片段以供参考

<script type="text/javascript">
 $(document).ready(function () {
     var url = "http://www.google.com/"; //test url 
     $.getJSON('http://urls.api.twitter.com/1/urls/count.json?url=' + url + '&callback=?', function (data) {
                   console.log(data);
                });
});
</script>

我希望它对你也有用:)

于 2012-11-28T21:21:59.887 回答
0

JSONP 不是数据类型。如果您想了解有关 JSONP 的更多信息,请阅读这篇名为“JSONP 到底是什么?”的SO 帖子。

在 OS/400 上发出 ajax 请求时,您实际上可以使用$.ajaxor $.get(或任何 jQuery ajax 方法),但如果您从与实际 HTTP SERVER/域不同的端口调用 RPGLE PGM,那么您必须提供?callback=?让我们javascript引擎知道它的JSONP(我相信)。JSONP 实际上是一个 javascript 函数/包装器,它允许将数据毫无保留地传递给客户端。如果您正在使用诸如 twitter 之类的 API 来执行跨域调用,那么您最好知道提供者是 SECURE。

我在实际执行 POST 时执行 GET 得到 500 Internal Server Error,因此我调查了发出 Ajax 请求的正确方法。

于 2016-06-29T07:42:50.267 回答