CNode

求一个解决方案,程序中需要加入实时交互功能,就如实时聊天那样,

问答
HHeroBoyluck发布于9 年前最后回复9 年前11 回复5262 浏览0 收藏

使用的express,搭建的web程序,总的服务监听端口 :app.listen(4400), 整体的代码结构就是,model,view,routes ,这样, 现在要加一个功能,进行用户间的实时交互,起这样的服务就需要socket.io 然后,就这样:var http = require('http').Server(app); var io = require('socket.io')(http); http.listen(**); 某个端口, 执行的时候,两个端口同时开始监听,我想的是,当点击那个功能时,在起那个服务, 而且功能操作也混乱了。

还有就是能不能监听一个端口,4400,但是,app.listen() 和http.listen() 有冲突么。。

求解答!!!新手,望赐教!

查看回复

回复 (11)

N
ngot#1·9 年前

用egg-socket.io吧

H
HeroBoyluck#2·9 年前
引用 ngot用egg socket.io吧

@ngot 没听过这个,有具体的案例看吗,提供一下,谢谢!

Z
zhangmingfeng#3·9 年前

不要把业务系统和IM系统混在一起,IM系统提供接口和sdk给业务系统调用即可,做好鉴权就行了,node的话推荐pomelo

来自酷炫的 CNodeMD

D
DevinXian#5·9 年前

找个多人聊天室代码,瞅瞅就好了

H
HeroBoyluck#7·9 年前
引用 DevinXian找个多人聊天室代码,瞅瞅就好了

@DevinXian 不是聊天室的问题,我要将他整合到整体的一个项目中,总的也有一个监听的端口,实时交互也需要监听端口,分开都可以实现,和一块就问题

H
HeroBoyluck#8·9 年前
引用 zy445566@HeroBoyluck 服务端:https://github.com/socketio/socket.io 客户端:https://github.com/socketio/socket.io...

@zy445566 有待细究,看了半天socket.io 知道,socket.io-client 不需要监听端口么,能给个socket.io-client 实例看看么,谢谢!

D
DevinXian#9·9 年前
引用 HeroBoyluck@zy445566 有待细究,看了半天socket.io 知道,socket.io client 不需要监听端口么,能给个socket.io client 实例看看么,谢谢!

@HeroBoyluck 2年前,貌似用express弄过个小型的聊天功能,直接监听服务器端的同一端口也没问题... socket.io-client 又不是服务器端,何谈监听端口,连接到服务器端 socket.io 就可以

H
HeroBoyluck#10·9 年前
引用 DevinXian@HeroBoyluck 2年前,貌似用express弄过个小型的聊天功能,直接监听服务器端的同一端口也没问题... socket.io client 又不是服务器端,何谈监听端口,连接到服务...

@DevinXian 总的是: var express = require('express'); var app = express(); routes(app); app.listen(4400); 现在要访问localhost:4400/chat 路由处理后,访问的是chat.ejs 页面,进行实时交互,每个登录用户到这个页面可以发信息, 都可以看到,那么路由处理/chat 的时候,就要开始监听一个端口,接受数据和分发数据,大概就这么一个逻辑,初次遇到 你说两个监听一个端口,我试了没成功,单独创了也没成功,页面没反应,不知哪有问题,还在调试,有什么意见建议,

Z
zy445566#11·9 年前

端口监听有啊,看你是用什么框架了啊 我就是用的就是koa,我是我自己封装的koa框架,我是这样用的 1.png 2.png https://github.com/zy445566/myKoa 它是和你的框架共用一个端口的

参与回复
登录后即可参与回复。登录