被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:它没有 HTTP OK 状态
Posted
技术标签:
【中文标题】被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:它没有 HTTP OK 状态【英文标题】:Blocked by CORS policy: Response to preflight request doesn't pass access control check: It does not have HTTP OK status 【发布时间】:2020-07-30 21:29:40 【问题描述】:我有本地应用程序。到目前为止我所尝试的
已安装 CORS 扩展(帮助我从后端获取令牌而不被阻止)
我必须将此令牌作为 X-API-Token 传递以调用我的下一个 API,但标题中出现错误。
我试图传递给标题
axios.get( `/booking/`, headers:
'X-API-Token': state.session.token,
'Access-Control-Allow-Origin':'*',
'Access-Control-Allow-Methods': 'GET',
'Access-Control-Allow-Headers': 'Origin, Content-Type, X-API-Token'
)
也不行。我无权访问服务器端。有没有办法从前端处理它?或者至少目前没有被 localhost 屏蔽?
【问题讨论】:
【参考方案1】:访问控制检查是浏览器的一项安全功能,因此请注意您在服务器中启用/禁用的内容。
这是一个由 Apache 提供的生产 express nodejs 应用程序。 请记住,浏览器正在缓存标头,因此您需要硬刷新和重新加载才能使其正常工作。
Header always set Access-Control-Allow-Origin "*"
Header always set Access-Control-Allow-Methods "GET,PUT,POST,DELETE,OPTIONS"
Header always set Access-Control-Allow-Headers "Content-Type,Authorization"
Header always set Access-Control-Request-Method "POST, GET, OPTIONS, DELETE, PUT"
Header always set Access-Control-Allow-Credentials "true"
【讨论】:
【参考方案2】:这个答案解决了我的问题(Disable same origin policy in Chrome) 对于 Windows:
打开开始菜单键入 windows+R 或打开“运行”
执行以下命令:
chrome.exe --user-data-dir="C://Chrome 开发会话" --disable-web-security
【讨论】:
以上是关于被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:它没有 HTTP OK 状态的主要内容,如果未能解决你的问题,请参考以下文章
Laravel 7 CORS:被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:没有“Access-Control-Allow-Origin”
被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:没有“Access-Control-Allow-Origin”标头
来源已被 CORS 策略阻止 对预检请求的响应未通过访问控制检查
CORS 策略已阻止从源“null”访问 XMLHttpRequest:对预检请求的响应未通过访问控制 [重复]
domain.com 已被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:它没有 HTTP ok 状态
如何解决这个“http://localhost:8080”已被 CORS 策略阻止:对预检请求的响应未通过 vueJS 中的访问控制?