小编典典

在本地运行Web-Socket进行调试

go

我使用的是大猩猩网络套接字,我想在本地运行它,是指使用以下chrome客户端或其他推荐的工具……当我进入调试模式时,出现错误

我用

"github.com/gorilla/websocket"


var upgrader = websocket.Upgrader{
    ReadBufferSize:  1024,
    WriteBufferSize: 1024,
}

upgrader.CheckOrigin = func(r *http.Request) bool { return true }

c, err := upgrader.Upgrade(w, r, nil)
if err != nil {
    log.Print("upgrade:", err)
    return
}

当我在Chrome或网络套接字客户端中运行以下网址时,出现错误

websocket:不是websocket握手:在“连接”标头中找不到“升级”令牌

localhost:8081/mypath

我想运行它

ws://localhost:8081/mypath

并为本地模拟提供令牌,我该怎么做?

要检查它,我使用Chrome的Simple WebSocket Client。其他任何客户都会有所帮助

编辑:

在chrome控制台中尝试时,出现以下错误:

VM42:164拒绝连接到’ws:// localhost:8081 / mypath’,因为它违反了以下内容安全策略指令:“ connect-
src'self'uploads.github.com status.github.com collector.githubapp.com
api.github.com www.google-analytics.com github-cloud.s3.amazonaws.com
github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-
upload-manifest-file-7fdce7.s3。 amazonaws.com github-production-user-
asset-6210df.s3.amazonaws.com wss://live.github.com


阅读 697

收藏
2020-07-02

共1个答案

小编典典

浏览器在获取要显示的网页时不使用WebSocket协议。从浏览器使用WebSocket端点需要代码。

Gorilla软件包中包含一些示例,这些示例显示了如何从浏览器进行连接(聊天命令示例是很好的起点)。

您可以使用浏览器控制台连接到WebSocket端点:

> ws = new WebSocket("ws://localhost:8080/mypath")
> ws.onmessage = function(ev) { console.log(ev.data) }
> ws.send("hello")
2020-07-02