【问题标题】:How To Reach Local Insecure (HTTP) Server From A Secure (HTTPS) Page如何从安全 (HTTPS) 页面访问本地不安全 (HTTP) 服务器
【发布时间】:2015-03-01 09:01:20
【问题描述】:

我有一个在 https 上运行的站点,它试图通过 AJAX 使用 http localhost 地址访问作为 http 服务器运行的 Windows 服务。但是,这将返回“访问被拒绝”错误。从 http 调用时它工作正常,但这不是测试之外的选项。我们也仅限于使用 Internet Explorer (9+)。

我已将相应区域的“允许混合内容”安全设置设为“启用”,但仍被阻止。

AJAX 调用如下所示:

    $.ajax({
        url: 'http://localhost:5923/somefunction',
        data: {
            sid: sid,
            aid: aid
        },
        success: function (ret) {

            //...
        },
        error: function (error, status, errThrown) {
            alert(errThrown);
        }
   });

我知道修改 Windows 服务以通过 https 运行是长期的最佳解决方案,但是否有人对允许混合活动内容的 IE 设置或任何其他临时修复有任何建议?

提前致谢。

【问题讨论】:

    标签: javascript ajax internet-explorer https mixed-content


    【解决方案1】:

    您需要启用跨域访问,因此请转到工具-> Internet 选项-> 安全选项卡,单击您选择的区域的“自定义级别”按钮。转到杂项 -> 跨域访问数据源设置并选择“启用”选项。

    【讨论】:

    • 感谢您的回复。但是,我实际上已经为各个区域启用了该设置(受信任)。
    【解决方案2】:

    此代码是否被 SOP(同源策略)阻止? 如果是这样,请将“crossDomain”设置为“true”。 http://api.jquery.com/jquery.ajax/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-12-02
      • 1970-01-01
      • 2010-09-08
      • 2014-12-30
      • 2017-01-28
      • 1970-01-01
      • 2013-01-23
      相关资源
      最近更新 更多