如何在Internet Explorer中禁用同源策略

40

Chrome允许我们禁用同源策略,以便测试跨源请求。我想知道在IE中是否有相同的可能性。

3个回答

77

是的,您可以在Internet选项中设置此项:转到安全选项卡。对于当前区域点击“自定义级别...”按钮。在下一个窗口中,向下滚动约三分之一至“其他 > 访问跨域数据源”,并将其设置为“启用”。如果当前区域是Internet,则应将该站点添加到受信任站点,并将此选项设置为受信任区域。

请注意,这将有效地禁用CORS,并且不会在请求中设置Origin标头。

如果您访问的资源需要身份验证,则需要在请求中手动处理此问题或在当前浏览器会话中进行预身份验证。

IE9 Access data sources across domains


3
在IE 10中,这对我没有用...我仍然无法通过iframe或弹出窗口访问其他页面的任何内容。 - DFTR
2
您可能还需要允许第三方 Cookie 以支持会话,方法如下:Internet 选项 -> 隐私 -> 高级 -> 第三方 Cookie -> 接受。勾选“覆盖自动处理 Cookie”、“接受”(第三方 Cookie)和“始终允许会话 Cookie”。 - lubosdz
@DFTR 你需要取消选择“启用保护模式”。在我这里,这样做之后它就可以工作了。 - Ng2-Fun

6

我的电脑上使用的是Internet Explorer 11版本,我也遇到了同样的问题。我采取了以下步骤来解决我的问题。

步骤1:允许跨域访问

 (Press) Alt -> Tools -> Internet Options -> Security (Tab) -> 
 Custom Level -> Miscellaneous -> Access data sources across domains ->
 Set to Enable

第二步: 禁用保护模式

 (Press) Alt -> Tools -> Internet Options -> Security (Tab) -> 
 uncheck Enable Protected mode for Internet & Local Intranet

步骤 3:将本地主机/域名添加到受信任站点列表中

 (Press) Alt -> Tools -> Internet Options -> Security (Tab) -> 
 Trusted site -> Sites -> Uncheck Require server verification(https:) -> 
 enter localhost url & click on add button.

0

https://www.webdavsystem.com/ajax/programming/cross_origin_requests/所述:

在FireFox、Safari、Chrome、Edge和IE 10+中:

要在FireFox、Safari、Chrome和IE 10及更高版本中启用跨域请求,您的服务器必须将以下标头附加到所有响应中:

Access-Control-Allow-Origin: http://webdavserver.com
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: ACL, CANCELUPLOAD, CHECKIN, CHECKOUT, COPY, DELETE, GET, HEAD, LOCK, MKCALENDAR, MKCOL, MOVE, OPTIONS, POST, PROPFIND, PROPPATCH, PUT, REPORT, SEARCH, UNCHECKOUT, UNLOCK, UPDATE, VERSION-CONTROL
Access-Control-Allow-Headers: Overwrite, Destination, Content-Type, Depth, User-Agent, Translate, Range, Content-Range, Timeout, X-File-Size, X-Requested-With, If-Modified-Since, X-File-Name, Cache-Control, Location, Lock-Token, If
Access-Control-Expose-Headers: DAV, content-length, Allow

在Internet Explorer 9及更早版本中:

https://dev59.com/L2Ei5IYBdhLWcg3wyO04#20947828所述


4
这是如何在服务器上实现,而不是如何在客户端上禁用。 - AndrewHarvey

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接