Rss & SiteMap
Foxtable(狐表) http://www.foxtable.com
狐表的OpenQQ很好用,帮助非常完善,比着抄就可以用的很好了,基本上,登陆,改密码,控制不在线时自动锁定系统,独占编辑等都会用到这个。
但是现在宁波电信已开始通知以后不可以用IP直接连接网站、系统、应用等服务,为此我用nginx代理狐表做的网站,判断客户端是用IP在连接还是用域名在连接,IP的直接回403,域名连接的才转进来,这样就可以实现在外网访问时,只可用域名连接,在内网访问时,我可以不走代理,直接用内网IP去访问狐表做的网站, 网站搞定了,但是系统应用搞不定,因为OpenQQ采用的是UDP协议,而UDP协议是4层的,用nginx代理时,根本不会判应用层内容,只能做纯转发,这就无法达到最新的要求了,同时查了很多资料,UDP端口开放后容易被攻击,且按狐表帮助的说法,UDP端口要对外开放好多个,可不是一个。
为了合规,参考早睡早起的纯杰哥贴子http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=158906&replyID=&skin=1,并在其指导下,采用WebSocket来取代了OpenQQ,目前已实现了控制登陆,改密码,不在线时自动锁定系统,独占编辑这个还没有开始做。源码共享出来,不足之处还请多指点。用最新的2022预览版做的,狐表旧版本可能打不开。
此主题相关图片如下:2.png
此主题相关图片如下:1.png
一次只能上传3个附件,还得来一次!
使用方法,D盘下建一个web文件夹,wjxxyth是数据库文件,导入SQL,我用的是SQL2016express,启动服务端,启动客户端,用户名admin密码admin
代码还是比较多的,我就懒的修改了,直接把我的正式项目放上来了。
下载信息 [文件大小: 下载次数: ] | |
点击浏览该文件:wjxxyth.rar |
下载信息 [文件大小: 下载次数: ] | |
点击浏览该文件:ws服务端.rar |
下载信息 [文件大小: 下载次数: ] | |
点击浏览该文件:websocket-sharp.rar |
效果展示
此主题相关图片如下:3.png
此主题相关图片如下:4.png
我上面做的连接都没有带参数,是先连接上,然后才开始发信息登陆,其实连接是可以带参数的,按get的形式发送
客户端Functions.Execute("WsConnect","ws://127.0.0.1:9091/WsChat?token=35&kk=yugn")
服务端中内部函数WsUserLogged接收
'WebSocket客户端上线后的事件,知道登陆用户的ID,和其他数据
Dim ID As String =Args(0)
Dim Origin As String = Args(1) '客户端请求地址
Dim cqs As System.Collections.Specialized.NameValueCollection = Args(2) '通过 cqs("token")来获取value值,注意区分大小写,注意是否为Nothing
Functions.Execute("LogText","用户ID:" & ID & "连接上了,地址:" & origin & "token:" & cqs("token") & "更多参数:" & cqs("kk"))
cqs中有啥要跟你做get传参一样。
多谢分享! |