x/net/websocket
标准库实现一个 websocket 服务器。,到目前为止我的尝试如下:,尝试使用多个 ws 客户端连接到 ws://localhost:3000/ws
时,我总是收到相同的错误:403-Forbidden
。我什至尝试了官方文档的示例,但仍然得到它。我错过了一些明显的东西吗?像默认端口阻塞或类似的吗?,提前谢谢您。,编辑:您可能需要使用不同的端口来重现该问题。在我的示例中使用
3000
,如果不可用,只会中断程序的执行。,编辑2:您可以使用像websocat这样的客户端并执行 websocat 'ws://localhost:3000/ws'
来尝试连接到服务器,我放弃了,但有很好的见解:如果您像我一样正在关注 Anthony GG 的从头开始在 Go 上创建 Websocket 服务器的演练 ,请不要。视频已经过时了,尽管它提供了如何创建视频的很好的直觉,但最好(并且没有耻辱)使用 gorilla 的 websocket 库进行学习。,我还使用
gorilla/mux
来使用路径参数(不知道为什么 http 处理程序不能)。请注意我如何将
http.Handle
更改为 mux.Router.HandleFunc
。正如用户 @Cerise 在评论中指出的那样,
x/net/websocket
包不在标准库中,但仅添加 Origin
标头也没有解决原始问题。,希望这能避免其他像我一样学习 Go 的人遇到的一些麻烦。,