我需要从我的 Intranet 的服务器向我的外部网页的服务器发送一个 post 请求。使用 jquery .post 方法我已经能够在 chrome 中做到这一点,但它在 IE 中不起作用。通过研究和测试,我将问题隔离为我将帖子发送到另一台服务器上的页面。有什么办法可以在 IE 中解决这个问题?
问问题
203 次
1 回答
1
是的,你绝对可以做到。
现代浏览器限制跨域ajax,因为它是一个很大的安全风险。但是有一些方法可以做到这一点。
首先,将包含 ajax 请求的 .js 文件放在要发布数据的服务器上
接下来,将文件包含在您当前的站点中 - 即您要发布的站点,但不要将文件保留在同一域中,而是将其从域链接到您要发布的位置。
使用 js 文件中的代码发出 ajax 请求,您就可以开始了。
- 故事的本质是,为了确保网页将数据发布到该页面所在的域拥有或控制该域的地方,设置了这样的限制。
另一种方法是通过这些指令明确允许跨域ajax,如this answer中所述
Access-Control-Allow-Origin: http://yourdomain-you-are-connecting-from.com/
on target server
在 php 中:
header("Access-Control-Allow-Origin: http://yourdomain-you-are-connecting-from.com/");
并在您的 .htacess 文件中添加
Header set Access-Control-Allow-Origin: http://yourdomain-you-are-connecting-from.com/
于 2012-12-19T14:43:07.547 回答