Access to XMLHttpRequest at 'http://localhost:9999/Medicare/adxMedicareCall' from origin 'http://xxx.xx.96.48:81' has been blocked by CORS policy: The request client is not a secure context and the resource is in more-private address space local.

首先翻译一下:
从来源“http://xxx.xx.96.48:81”访问“http://localhost:9999/Medicare/adxMedicareCall”处的 XMLHttpRequest 已被 CORS 策略阻止:请求客户端不是安全上下文,并且资源位于更私密的地址空间“本地”中。

问题奇怪的点就在 测试环境,开发环境 都不会阻止。

一刚开始认为是排查的方向是往跨域方向排查。首先 "http://xxx.xx.96.48:81"是内网,"http://localhost:9999/Medicare/adxMedicareCall" 是本机服务,在开发阶段和测试环境(这里包括chrome版本127.0.6533....)都没任何问题,发到客户的内网就出现了上面这个错误,都是用的chrome版本 127.0.6533,并且chrome版本号相同。
9999 是允许跨域的,CORS是chrome阻止了,不是9999服务阻止,这是浏览器安全导致的,但是奇怪的是在部分地区会阻止,比如新疆地区的chrome。
目前的解决方法只有下面两种:
1."http://xxx.xx.96.48:81" 换成"https" chrome 不会阻止。

  1. 把"localhost:9999" 中的"localhost"换成 本地ip。方案可行.

任林飞
1 声望0 粉丝