繁体   English   中英

node.js 套接字 io https

[英]node.js socket io https

我正在尝试在 HTTPS 协议上建立一个 WebSocket(使用 node.js/socket.io)。 但是客户端仍然继续轮询并且无法找到服务器,尽管服务器看起来很好并且正在侦听。

这是我迄今为止所做的。 你能看出它有什么问题吗?

我的假设是我使用的证书有问题。 我用plesk“让加密”加密了服务器并从这个过程中获取了证书,对吗?

- - 服务器端 - -

var fs      = require('fs');
var express = require('/opt/plesk/node/7/bin/node_modules/express');
var https   = require('https');
var app     = express();

var server  = https.createServer({
    key:  fs.readFileSync('file.pem'),
    cert: fs.readFileSync('file.crt')
},app);

var io = require('/opt/plesk/node/7/bin/node_modules/socket.io').listen(server);

server.listen(8080);

- - 客户端 - - -

var socket = io('/', {rejectUnauthorized: false, secure:true});

这是客户不断给我的:
https://foo.de:8080/socket.io/?EIO=3&transport=polling&t=MF9zjE6

由于您不告诉您收到什么错误消息,因此很难确定您的问题。 也许您应该尝试让您的套接字工作,然后再尝试实现 https。

也许你应该尝试像这样简化它。

服务器:

var express         = require('express')
var app             = express()
var server          = require('http').Server(app)
var io              = require('socket.io')(server)

server.listen(8080);

客户:

var socket = io();

这段代码应该创建您的套接字和 Express 应用程序。 然后你可以尝试将 http 更改为 https ,它应该也能正常工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM