Alp*_*ğlu 14 javascript google-chrome cors private-network-access
我们在公共站点上有一个测试环境。我们在 chrome 上使用 --disable-web-security 标志,让测试人员在手动测试阶段绕过公共服务调用的 CORS 错误。而且我们在代理机器上也有本地主机请求。然而今天,随着 Chrome 98 的更新,我们开始努力应对针对 localhost 的网络请求。
\n我们收到的错误是来自公共站点的本地主机请求:
\nAccess to XMLHttpRequest at \'https://localhost:3030/static/first.qjson\' from origin \'https://....com\' has been blocked by CORS policy: Request had no target IP address space, yet the resource is in address space `local`.
本地主机上的站点配置为返回 Access-Control-Allow-* CORS 标头,包括“Access-Control-Allow-Private-Network: true”。
\n而且我也没有看到任何预检请求。只有一个 GET 请求出现 CORS 错误。
\n我们怀疑这可能是您通过 --disable-web-security 禁用 Web 安全性时引起的副作用。它可能会阻止获取目标 IP 地址空间。我们的假设基于 CORS 预检部分https://wicg.github.io/private-network-access/上的 CORS 预检部分
\n\n\n3.1.2. CORS 预检
\n
\n应调整 HTTP 获取算法,以确保为从安全上下文发起的所有专用网络请求触发预检。
\n这里的主要问题还是在 HTTP 网络获取中获得连接之前,响应\xe2\x80\x99s IP 地址空间是未知的,该连接位于 CORS 预检获取之下。
那么有人知道使用 --disable-web-security 标志进行专用网络访问的任何解决方法吗?\n或者也许我们遗漏了一些东西。谢谢您的帮助。
\n小智 14
以下步骤可以帮助解决 Chrome 98 中的问题,对于 Edge 等其他浏览器,您需要像 Chrome 一样执行类似操作。
使用 chrome 版本 98 请求。您需要执行以下步骤:- 在终端上运行此命令
defaults write com.google.Chrome InsecurePrivateNetworkRequestsAllowed -bool true
重新启动浏览器,不起作用然后重新启动机器
| 归档时间: |
|
| 查看次数: |
15802 次 |
| 最近记录: |