小编典典

Microsoft Edge阻止了跨域请求发送到同一专用网络CIDR中的IP

ajax

$.ajax({
url: “http://10.13.22.150/req_path",
success: function(result){
console.log(result);
}
});

我想将跨域XMLHttpRequest发送到专用网络中的IP地址。但是,开发人员工具控制台中显示以下错误:

SCRIPT7002:XMLHttpRequest:网络错误0x2efd,由于错误00002efd而无法完成操作。

根据Wireshark,数据包不是从客户端发送的。我猜想该请求已被Microsoft
Edge阻止。此外,我发现仅当XMLHttpRequest和Edge客户端的URL在专用网络的同一CIDR中时,才阻止该请求。

Client IP             Request URL            Result
192.168.x.x  send to  192.168.x.x   ->>>>>   X
10.13.x.x    send to  10.13.x.x     ->>>>>   X
10.13.x.x    send to  192.168.x.x   ->>>>>   O

IE11 / Chrome / Firefox等其他浏览器也可以正常工作。这种情况仅在Microsoft
Edge中显示。关于此问题是否有任何解决方法或解决方案?


阅读 1695

收藏
2020-07-26

共1个答案

小编典典

了解增强保护模式

专用网络资源

由于EPM并未声明privateNetworkClientServer功能,因此您的Intranet资源受到保护,免受多种类型的跨区域攻击(通常称为“跨站点请求伪造(CSRF)”和“
Intranet端口扫描”。)Internet页面无法使用构架Intranet页面,从中加载图像或资源,向其发送CORS XHR请求等。

以上所有内容似乎都适用于MS Edge。Edge唯一缺少的是安全区域设置(至少在此时,v20.10240)。

我的问题不是与XMLHttpRequest有关,而是与尝试在Internet页面内部的iframe中加载Intranet页面有关。

2020-07-26