以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [免费开源]狐表bs集成websocket方法,dll来源于github 3.5k高分数的C# Websocket库 稳定性和兼容性非常好 。 相当于web bs领域的OpenQQ功能 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=158906) |
||
-- 作者:chen37280600 -- 发布时间:2020/12/7 9:36:00 -- [免费开源]狐表bs集成websocket方法,dll来源于github 3.5k高分数的C# Websocket库 稳定性和兼容性非常好 。 相当于web bs领域的OpenQQ功能
①效果一览 我从github上找了一个高分WebSocket的开源库,编译成dll给狐表实用。我只总结了对我有用的功能,有能力的大神,完全可以进一步看源码,注释详细,挖出更多更深的功能。 github地址:https://github.com/sta/websocket-sharp 这个玩意,我弄得不深,研究了1天,整合了1天,再写文档写了1天。有更深需求的,建议自己看英文源码。 ②基础引入 1引入websocket-sharp.dll(在帖子结尾有回复后有下载链接) 2添加2个命名空间 WebSocketSharp.Server wss WebSocketSharp.Server ws 重启项目,然后再检查命名空间是否还在。因为如果你写错字母,它会消失的。 3添加全局代码
4添加内部函数
函数名:WsReceivedMessage
5更新代码精灵 用我的help.mdb覆盖到狐表程序里的help.mdb(参考路径C:\\foxtable\\Professional) 我为代码精灵增加了很多websocket的提示 (顺便如果你想问我怎么添加的提示,你可以看之前我分享的帖子http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=152491&replyID=&skin=1) ③开始使用 1狐表启动WebSocket
2狐表停止WebSocket
3前端代码 代码很简单,直接看就行了,百度一堆h5关于websocket的使用,都是这些方法
④前端功能 1主动连接服务器 wsConnect() 2发送消息 wsSend(\'xxx\') 3主动断开连接 wsClose() 4收到服务器消息 //连接接收信息后触发的事件,自己再改写 function wsOnMessage(msg) { console.log(\'收到消息:\' + msg.data) } 类似的还有 连接成功后事件wsOnOpen、连接断开后事件wsOnClose、连接错误后事件wsOnError ⑤后端功能 1对某个用户发消息 Functions.Execute("WsSendOne",ID,"xxx") 2群发消息 Functions.Execute("WsSendAll","xxx") 3群发消息 Functions.Execute("WsSendAll","xxx") 4踢人下线 Functions.Execute("WsKickOff",用户ID) 5收到消息 在WsReceivedMessage维护 类似的还有 用户登录后WsUserLogged、用户退出后WsUserLogout、ws异常触发事件WsOnError ⑥注意的坑 1ws没有心跳 ws是持久实时连接,并不会发送心跳包,要心跳就自行实现 2在页面刷新后ws会断开 页面刷新,ws会立刻断开,自行解决重连 3nginx反向代理 ws也是http,只不过头部增加了升级标志而已。Nginx的反向代理,还需要进一步修改代码,方法自行百度 4保持不掉线 如果是直连狐表,是不会断的 如果只通过nginx反向代理,默认情况下1分钟会断,因为nginx有个设置,你还要去改 写了这个还不够,前端还要做个心跳,9分钟的时候发一下。服务器是否回复都没所谓。 5没有连接前拦截 可能是技术不够,网上也没看到什么前置拦截方法,并且网上的人也基本都说是先连接上,再判断踢出 6不能与HttpServer共用同一个端口 例如http监听了80,那你就要用非80,例如81 如果想集成到http里,只能狐表官方改自己的HttpServer源码,集成进去才行,我们是第三方外挂的。 那这样会不方便吗?我服务器要开2个端口?
⑥下载 可压缩包里提供了dll,你可以自行集成。还提供了一个狐表演示案例+vue页面,你可以自己试试。 这么高端的功能,不打个广告有点可惜,下载链接在我淘宝详情页的结尾,记得滚下去看完哦 以下内容只有回复后才可以浏览 ⑦有偿指导服务 提供有偿指导服务:100元,需要的可以淘宝拍。 这个开源的dll虽然是很强很稳定,我说的坑并不是这个dll有bug, 而是实际里结合狐表、结合jquery、结合vue、结合部署环境的技术点,是经验总结 例如:
=============================================================== 顺便总结以前分享过的帖子,方便大家学习 联系QQ:2385350359 免费产品: 经验分享: [此贴子已经被作者于2024/6/5 18:08:01编辑过]
|
||
-- 作者:reachtone -- 发布时间:2020/12/7 9:43:00 -- 赞! |
||
-- 作者:有点蓝 -- 发布时间:2020/12/7 9:44:00 -- 多谢分享。 |
||
-- 作者:WELOVEFOX -- 发布时间:2020/12/7 10:14:00 -- 谢谢 |
||
-- 作者:z769036165 -- 发布时间:2020/12/7 10:18:00 -- 厉害了 |
||
-- 作者:zoudezhao -- 发布时间:2020/12/7 10:21:00 -- 可以可以 好东西. |
||
-- 作者:venking999 -- 发布时间:2020/12/7 10:51:00 -- 赞杰哥的技术深研精神 |
||
-- 作者:石四 -- 发布时间:2020/12/7 10:53:00 -- 收藏先,暂时没时间琢磨。 |
||
-- 作者:liufucan -- 发布时间:2020/12/7 11:10:00 -- 支持分享,谢谢 |
||
-- 作者:yangheqing -- 发布时间:2020/12/7 11:13:00 -- 多谢分享。 |