【问题标题】:Jquery post to another server not working in internet explorerJquery 发布到另一台服务器在 Internet Explorer 中不起作用
【发布时间】:2026-01-08 07:05:01
【问题描述】:

我需要从我的 Intranet 的服务器向我的外部网页的服务器发送一个 post 请求。使用 jquery .post 方法我已经能够在 chrome 中做到这一点,但它在 IE 中不起作用。通过研究和测试,我将问题隔离为我将帖子发送到另一台服务器上的页面。有什么办法可以在 IE 中解决这个问题?

【问题讨论】:

    标签: internet-explorer google-chrome post


    【解决方案1】:

    是的,你绝对可以做到。

    现代浏览器限制跨域 ajax,因为它存在很大的安全风险。不过还是有办法的。

    首先,将包含 ajax 请求的 .js 文件放在要发布数据的服务器上

    接下来,将文件包含在您当前的站点中 - 即您要发布的站点,但不要将文件保留在同一域中,而是将其从域链接到您要发布的位置。

    使用 js 文件中的代码发出 ajax 请求,就可以开始了。

    • 故事的本质是,为了确保网页将数据发布到该页面所在的域拥有或控制该域的地方,设置了这样的限制。

    另一种方法是通过这些指令明确允许跨域ajax,如this答案中所述

    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/
    

    【讨论】: