也有可能是浏览器的安全策略,不允许访问本地服务,可以在设置里看看

Reply to this note

Please Login to reply.

Discussion

Safari浏览器,点开发布笔记没反应。应该要客户端要求访问本地网络的权限吧?

我测试damus,nostrmo,nostur,添加局域网IP时会跳出是否允许访问本地网络设备的提示。这些客户端都可以读写。

这图片你应该看不到,我用自己托管的jumble回复的,客户端,中继在同一个局域网所以可以上传😂

换了有域名的图床

浏览器输入局域网IP是打的开的,应该是客户端没请求权限吧?

我用 Safari 试了下倒是可以 🌝

跟手机有关吗?

你中继跟Wi-Fi网络是一个局域网?

那肯定要一个局域网才能访问到的,我电脑上跑的中继器,手机上连的

奇怪🤔,我自己托管的客户端倒是没问题,他们就是一个局域网的。

我怀疑jumble是不是认为那个192IP是跟它服务器同一个局域网,所以写不进,因为不存在。

我换台手机试试,我输入局域网地址时没看到客户端要本地网络访问许可。

在 iOS 14 或更高版本以及 iPadOS 14 或更高版本中,如果有任何 App 要与你网络中的设备进行交互,它必须在首次尝试浏览你的本地网络时征得许可。

那肯定没有,这个授权是给 Safari 的不是给网页的,网页没有办法请求这个权限的

换了手机也不行,那些有要求访问本地网络设备许可的app才能成功

我没写这么复杂的逻辑😂 有可能是 Safari 不允许 https 网页访问本地服务

0xchat也不行,不行的都没要求本地网络设备权限。

换PC试试😂

电脑浏览器 inspect看到的error

DOMException: The operation is insecure.inspect

index-dPzpIWUu.js:1662:15898

使用 jumble.social 浏览本地中继器报的错?

嗯,就加局域网中继一个,发布失败的error

火狐浏览器

确实,我试了火狐和 chrome 都不行,浏览 https 网页时无法发起 ws:// 连接,除非是 localhost。

Mixed Content: The page at 'https://jumble.social/settings/relays' was loaded over HTTPS, but attempted to connect to the insecure WebSocket endpoint 'ws://192.168.1.105:4869/'. This request has been blocked; this endpoint must be available over WSS.

可以考虑使用 pigeon 做个反向代理,然后就可以通过互联网访问。不过这个只是一个 demo,还存在一些小问题,完整版集成进了 nostr-relay-tray。你如果要用的话我可以完善一下。

https://github.com/CodyTseng/pigeon/blob/master/pigeon/README.md

我在外面用tailsacle可以直接访问家里局域网Ip的中继,就是回家连上Wi-Fi就不行了

用了 tailsacle 就是 wss 不是 ws 了吧

ws,我是自己架的heascale服务器,客户端还是tailscale

不太了解 tailscale,但听起来不像是反向代理。这问题有些无解呀,寄人篱下,浏览器不让也没办法😂