【发布时间】:2018-10-05 00:00:36
【问题描述】:
我让这个工作正常,但在重新启动过程中突然停止工作,我无法深入了解发生了什么。
基本上,vue/node (dev) 模式使用 http,但 ajax 使用 https 到服务器。 服务器响应所有标头,包括 Access-Control-Request-Origin,我可以在 firefox 开发工具中看到来自服务器的 json 数据响应 但由于某种原因,它会引发错误:网络错误警报。检查我发现的开发工具
跨域请求被阻止:同源策略不允许读取位于https://r.roller.lan/workstations?session_token=2de63puojmt3ubkfp94c3ohm45 的远程资源。 (原因:CORS 标头“Access-Control-Allow-Origin”与“https://devv.roller.lan:8080”不匹配)
我正在从http://devv.roller.lan:8080 发出请求,并且链中的某个位置被翻译为不匹配的 https://?
谢谢
【问题讨论】:
-
不久前我遇到了类似的错误,这是由插件引起的。您是否尝试过禁用所有插件/以隐身模式运行?它也可能是由您的路由引起的。如果您将服务器设置为将所有 http 调用路由到 https,那么您也可能会看到类似的内容。
-
我尝试使用 FF 中的选项“禁用附加组件重新启动”,基本上 FF 告诉我正在进入“安全模式”,瞧一切都按预期工作。谢谢贾斯汀的帮助,非常感谢。
-
查看Nginx Reverse Proxy 之类的内容。如果您使用的是开发服务器,则可以代理您的请求。话虽如此,您希望您的后端默认支持 Access-Control 标头(出于安全原因),它被阻止。
-
非常感谢科舒克斯。在我将文章中突出显示的部分添加到 nginx conf 后,一切都按预期工作。