有没有办法不使用服务器代理来执行跨域GET或POST请求?
答案 0 :(得分:13)
如果您只使用当前浏览器并控制外部域,则可以使用Cross-Origin Resource Sharing [CORS]
大多数人没有那么奢侈,所以你要么必须使用带有Padding [JSONP]的JSON,要么你需要使用服务器端代理。
答案 1 :(得分:1)
据我所知,没有办法在JS中提出跨域请求,但您可以只查询服务器并从那里发出请求。
修改:正如Russ Cam上面所说,请查看JSONP。
答案 2 :(得分:0)
使用YQL是一种跨域ajax的简单方法。您可以指定返回JSON或XML对象。 IBM有一个很好的教程:http://www.ibm.com/developerworks/web/library/wa-aj-jsonp2/index.html
虽然只是搜索yql跨域,但它会带来很多教程。
答案 3 :(得分:0)
你可以使用Flash。 Flash允许您向另一台服务器发出跨域请求,前提是它提供Flash跨域策略文件(XML文件)。因此,您需要对其他服务器进行管理访问才能进行设置。
如果您认为此选项可能是您要查找的内容,或者您想要跨域执行SSL / TLS,请查看opensource Forge项目:
答案 4 :(得分:-2)
AJAX Cross Domain是一个低成本库,允许执行跨域AJAX请求。 http://www.ajax-cross-domain.com/