最近我遇到以下声明:“所有 Ajax调用XML数据文件必须来自同一个域或请求将失败。”,任何人都可以帮助我理解这一点,因为我可以'没有多大用处。AJAX XML调用跨域
0
A
回答
0
比方说,您的网站,包括启动AJAX的Javascript托管在site1.com
。
AJAX将请求一个名为file.xml
的文件,其地址为site2.com/file.xml
。
此请求site1.com
--->site2.com
说明相同的原产地策略,因为2在不同的域上。
解决方法?
- 最简单的解决方案是在site1.com上托管file.xml,如果可以的话?
- 您可以在您的域名
site.com/getMeThatAwesomeFile
它执行一些服务器端代码来获取文件的内容,并返回到您请求的URL - 您可以使用反向代理,以便
site2.com/file.xml
实际上解析为您的域名的东西。
0
您可以使用JSONP,但有一些限制(只允许'GET'动词,数据应放置在服务器的函数内部)。 JSONP首先不是ajax调用,它下载脚本并调用jsonp函数,并在该函数中传递数据。
例如如果你使用JSONP,那么它会像
<script type='text/javascript' src='cross-domain-url'>jsonpFunction(data)</script>
从服务器中,你必须得到像jsonpFunction({“名”:“ABC”})的反应,所以得到这个响应后,您宣布jsonpFunction会被调用,你将能够实现这个{'name':'abc'}对象。
相关问题
- 1. 跨域AJAX调用
- 2. Ajax调用跨域
- 3. 跨域Ajax调用
- 4. AJAX跨域调用
- 5. 跨域AJAX调用
- 6. 跨域AJAX调用?
- 7. AJAX跨域调用
- 8. ajax跨域取xml
- 9. Ajax调用Webmethod,跨域
- 10. 跨域Ajax调用EasyXDM
- 11. 通过Ajax跨域调用
- 12. 跨域Ajax调用jquery
- 13. 让ajax调用跨域
- 14. 跨域ajax调用:postMessage
- 15. 跨域AJAX调用问题
- 16. 跨域AJAX阅读XML
- 17. 跨域Ajax调用子域IE7 +
- 18. 跨域jQuery ajax调用不起作用
- 19. 使用JQuery进行跨域Ajax调用
- 20. 使用jQuery和AJAX跨域PHP调用
- 21. JSONP,jQuery和PHP使跨域AJAX调用
- 22. AJAX xhr.upload.addEventListener不工作的跨域调用
- 23. 在Chrome扩展中跨域ajax调用
- 24. jQuery的跨域Ajax调用和Internet Explorer
- 25. 跨域Ajax调用不是在IE
- 26. Ajax调用PHP服务跨域
- 27. 跨域Ajax调用获取静态Html?
- 28. 跨域ajax调用localhost Web API
- 29. 跨域AJAX调用中的Atom壳牌
- 30. 在跨域$ .ajax调用上触发ajaxError?
这意味着它说。除非与您位于同一个域中,否则您无法通过AJAX获取XML。看到这个:http://en.wikipedia.org/wiki/Same_origin_policy –
你不能进行跨域调用,但你可以进行同域调用谷歌它。 – moonwave99
我从维基百科链接中得到它,谢谢! –