node.js 搭建服务问题
const Koa = require('koa')
const http = require('http')
const WebSocket = require('ws')
const app = new Koa()
const server = http.createServer(app.callback())
const wss = new WebSocket.Server({ server })
server.listen(3000)
麻烦解释一下这种做法,会跑起来几个服务?如果是两个,那web服务
和socket服务
共用3000端口
了吗?
我想在微信小程序上用WebSocket
,但据我所知,小程序后台的自动化脚本会杀死除了80端口以外其他进程
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
wsws是没有跨域的 你这个问题点开network调试面板。看请求信息里面的upgrade有没有,然后响应状态码是不是101。如果是只有101和upgrade那就是ws,如果又有200又有101 那就是都有 如果只有200的状态码就是没有ws,正常我用都是两个端口,一个ws,一个http协议的端口
1、可以测试一下,分别用
http
访问和用ws
访问。2、小程序不管是
https
还是wss
,都是443端口,这里有两个方案方案一
单域名,做一层代理,监听80和443端口,80强制转443,根据
uri
进行代理转发到不同端口,例如/api/
,是web转发80,/ws/
,是socket转发5000,方案二
弄两个域名,一个域名
web
,一个域名ws
,都是监听443
端口ws库的文档提供了一个监听http协议升级的方案(https://www.npmjs.com/package...),我试了一下是可行的,你可以试一下。至于koa服务放哪儿我就不清楚了~~~