最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

如何发送使用WS NPM模块中从的NodeJS客户“升级”握手的WebSocket服务器?

运维笔记admin11浏览0评论

如何发送使用WS NPM模块中从的NodeJS客户“升级”握手的WebSocket服务器?

如何发送使用WS NPM模块中从的NodeJS客户“升级”握手的WebSocket服务器?

我使用的WS NPM模块建立在我的NodeJS的WebSocket客户机和服务器

从客户端我要送一“升级”握手请求到服务器与一些指定的协议的服务器。

从客户端,这是我用什么做的服务器的连接。

const ws = new WebSocket('ws://localhost:8989/');
ws.on('open', function open() {
          console.log('Connected to Server');
          })

这是我握手请求,

GET <target> HTTP/1.1
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Key: x3JJHMbDL1EzLkh9GBhXDw==
Sec-WebSocket-Protocol: com.xxx.service.v1
Sec-WebSocket-Version: 13

我应该如何升级添加页眉和协议使用WS NPM模块,我应该如何解释它们在服务器端我的客户端的连接请求?

这是我的样本服务器端代码,

var port: number = 8989;
var WebSocketServer = WebSocket.Server;
var wss = new WebSocketServer({ port: port });

wss.on('connection', (ws: WebSocket) => {
    console.log('Web Socket Server Connected');
});

我无法弄清楚如何通过WS客户端发送这些这些升级头和如何解释它们在服务器端?

这个握手之后,我必须通过WebSocket的短信发送前导。

请建议。

谢谢

回答如下:

像Heroku的一些Web服务您处理该问题,但其他人一样openshift没有它。刚刚尝试在URL字符串“WS的“WSS”这一翻译。

如果你想这样做,在本地主机上尝试使用https模块而不是HTTP。如果你需要manualy做到这一点,尝试创建WebSocket的时候将头

    var wss = new WebSocketServer({ port: port,
                                    aField: 'aValue',
                                    anotherField: 'anotherValue' });

当您设置端口可以设置标题太多,但你一定要知道正确的领域,为浏览器接受它们设置。

发布评论

评论列表(0)

  1. 暂无评论