云服务器推送的 JavaScript 没法控制局域网内设备?

5 天前
 cowiejulewbfwo

💻 项目情况与问题排版 (Project Status and Issue Formatting)

一、项目背景与初始设计 (Background and Initial Design)

您的项目是在云端搭建了一个平台 (Cloud Platform),集成了多个传感器控制程序。


二、当前遇到的瓶颈 (Current Bottleneck)

由于新增了一个使用 HTTP 通信 (HTTP Communication) 的传感器,导致了安全策略限制问题。


1607 次点击
所在节点    程序员
14 条回复
Becod
5 天前
安全限制,没法绕过
用 electron 或者 tauri 封装一下吧
Becod
5 天前
忘记了 cors ,所以局域网里面设置一下 Access-Control-Allow-Origin 看看
前提是局域网和云端都用 http 或者 https
或者用 websocket

可以参照一下 postman 是怎么处理这个的(本质上应该相同吧
cowiejulewbfwo
5 天前
@Becod 问了 ai ,貌似也不行。
目前想的就是笔记本上跑个 python 代理程序,http 通信让 python 代理程序做。但是就得单独打开一个应用,烦得很,做这个平台的目的就是为了集成,结果搞不成。
caola
5 天前
使用一个二级域名指向这个内网 IP,然后绑定这个域名和对应的 SSL ,例如 192-168-1-11.example.com ,可以提前解析所有的内网 IP
Puteulanus
5 天前
好像有启动参数能关掉浏览器的跨域检查,就自己专项专用可以试试呗
https://medium.com/@beligh.hamdi/run-chrome-browser-without-cors-872747142c61

跑起来的浏览器别拿来干其他的就是了
ntedshen
5 天前
根据 ip 段做的限制,你给本地做个公网的 ip 段其实也无所谓。。。
pingdog
5 天前
参考下 localsend
StarUDream
5 天前
PNA ,本地设备需要加下面这个头

```
Access-Control-Allow-Private-Network: true
```

或者在你本地搭建一个反向代理
wecgwm1998yichen
5 天前
之前见过一个 web 项目也遇到过类似的问题,后面改成 windows 应用似乎就解决了
mmc
5 天前
如果传感器 http 能加 tls 和允许跨域 header 就好办,不行也可以试试浏览器插件
cowiejulewbfwo
4 天前
@Puteulanus 这样弄,有的客户不会搞,得做得无脑一点
cowiejulewbfwo
4 天前
@StarUDream 这个也不行,传感器是买的,封装好的,搞不了
cowiejulewbfwo
4 天前
@mmc 不行,做个浏览器插件确实可以实现
cowiejulewbfwo
4 天前
@wecgwm1998yichen 桌面应用就不存在这个问题了,就是浏览器环境下有这个安全问题

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1173375

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX