
您的项目是在云端搭建了一个平台 (Cloud Platform),集成了多个传感器控制程序。
由于新增了一个使用 HTTP 通信 (HTTP Communication) 的传感器,导致了安全策略限制问题。
问题描述 (Issue Description):
**出于安全考虑 (For security reasons)**,浏览器绝对禁止一个从服务器(例如 $https://your-app.com$)加载的网页,去直接访问或连接您本地局域网的另一个 IP 地址(例如 $http://192.168.1.89$)。
策略限制 (Policy Constraints): 此限制主要受以下浏览器安全策略的阻止 (Blocked):
本质问题 (Root Cause): 您试图从一个 **安全上下文 (Secure Context)**(云端 HTTPS 网站)发起的页面中,向一个 **不安全/本地上下文 (Insecure/Local Context)**(本地局域网的 $http://IP$ 地址)发起请求,这在现代浏览器中是严格禁止的。
1 Becod 3 小时 9 分钟前 安全限制,没法绕过 用 electron 或者 tauri 封装一下吧 |
2 Becod 3 小时 4 分钟前 忘记了 cors ,所以局域网里面设置一下 Access-Control-Allow-Origin 看看 前提是局域网和云端都用 http 或者 https 或者用 websocket 可以参照一下 postman 是怎么处理这个的(本质上应该相同吧 |
3 cowiejulewbfwo OP @Becod 问了 ai ,貌似也不行。 目前想的就是笔记本上跑个 python 代理程序,http 通信让 python 代理程序做。但是就得单独打开一个应用,烦得很,做这个平台的目的就是为了集成,结果搞不成。 |
4 caola 1 小时 11 分钟前 使用一个二级域名指向这个内网 IP,然后绑定这个域名和对应的 SSL ,例如 192-168-1-11.example.com ,可以提前解析所有的内网 IP |
5 Puteulanus 45 分钟前 好像有启动参数能关掉浏览器的跨域检查,就自己专项专用可以试试呗 https://medium.com/@beligh.hamdi/run-chrome-browser-without-cors-872747142c61 跑起来的浏览器别拿来干其他的就是了 |