0

这是给出错误的代码

<script type="text/javascript">

   var reqUrl='https://public-api.wordpress.com/rest/v1/sites/en.blog.wordpress.com/posts/slug:blogging-and-stuff';

   $.getJSON(reqUrl,function(data) {
          alert(data);   
   }).error(function() { alert("error"); });

</script>

我浪费了几个小时,但没有成功。在浏览器中访问 url 提供了有效的 JSON。

我需要使用的网址是 https://public-api.wordpress.com/rest/v1/sites/en.blog.wordpress.com/posts/slug:blogging-and-stuff

请帮忙

4

1 回答 1

0

由于同源策略限制,您不能发送跨域 AJAX 调用。根据您对远程域的控制级别,有一些解决方法。查看以下指南

  • JSONP(要求您控制远程域)
  • CORS(要求您控制远程域)
  • 您域上的服务器端脚本桥(不需要您控制远程域)

更新:

好的,既然您已经显示了实际的 url,它似乎支持 JSONP。以下是如何使用它:

var reqUrl = 'https://public-api.wordpress.com/rest/v1/sites/en.blog.wordpress.com/posts/slug:blogging-and-stuff?callback=?';

$.getJSON(reqUrl,function(data) {
    alert(data);   
}).error(function() { alert('error'); });

​ 请注意?callback=?我在您的网址末尾附加的参数。

这是一个现场演示:

http://jsfiddle.net/6S4TP/

于 2012-08-18T10:18:06.473 回答