jQuery / Ajax fetches local but not remote pages
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
XmlHttpRequest error: Origin null is not allowed by Access-Control-Allow-Origin
我仍然不明白为什么这个代码在加载本地服务器页面(localhost)时工作正常,但在尝试获取远程数据时什么都不显示
1 2 3 4 5 6 7 8 | $(document).ready(function(){ $.get( "message.html", function(data) { $("div").html(data); }, "html" ); }); |
并显示远程html文件给我没有错误,但没有数据:
1 2 3 4 5 6 7 8 | $(document).ready(function(){ $.get( "http://viralpatel.net/blogs/2009/04/jquery-ajax-tutorial-example-ajax-jquery-development.html", function(data) { $("div").html(data); }, "html" ); }); |
问候
存在内置限制以防止来自浏览器的跨域Ajax请求。 几乎所有浏览器都实现了这一点
有一些解决方法,例如这里的文章或使用JSONP。 但这是对从浏览器发送的Ajax请求的基本限制。 如果您正在使用ASP.NET Encosia,那么在使用自定义HttpHandler进行代理方面也有很好的建议。
另请参阅:使用Ajax的跨域限制 - JSON