【问题标题】:How to get cross-domain JSON from jQuery?如何从 jQuery 获取跨域 JSON?
【发布时间】:2013-05-16 02:41:25
【问题描述】:

我正在尝试从不支持 jsonp 实现的服务器获取 JSON (getJSON())。即在 URL 中添加callback=? 时,服务器确实返回了数据,但返回的是没有填充的纯 JSON。

我知道这是必须在服务器端更正的问题 - 无法在 jQuery 中解决它。这是正确的吗?

【问题讨论】:

  • 是的,它是正确的。如果服务器不支持 JSONP,则无法通过常规 AJAX 请求从中获取任何数据。

标签: java jquery json rest jsonp


【解决方案1】:

如果服务器也不支持 CORS 支持jsonp,您可以在这种情况下尝试代理方法。一个例子http://www.corsproxy.com/,应该还有其他代理替代品。

它有什么作用?

CORS 代理允许您网站上的 javascript 代码访问其他域上的资源,这些资源通常会因同源策略而被阻止。

它是如何工作的?

CORS 代理利用了跨域资源共享,这是与 HTML 5 一起添加的功能。服务器可以指定他们希望浏览器允许其他网站请求他们托管的资源。 CORS 代理只是一个 HTTP 代理,它在响应中添加一个标头,说“任何人都可以请求这个”。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-02-28
    • 2012-10-07
    • 1970-01-01
    • 2014-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-23
    相关资源
    最近更新 更多