下载部署
首先下载 v-socket,在终端里将服务运行起来,就拥有一个非常轻量化的WebSocket服务
从Github下载https://github.com/vaas1993/v-socket
可以将项目拉下来自己编译,也可以直接下载releases
下载或者编译后我们得到一个 v-socket.jar 文件,在终端运行以下命令启动服务:
java -jar v-socket.jar
终端输出以下内容说明服务运行成功:
2023-02-23 14:47:55.0812 INFO - 消息队列处理器启动成功
2023-02-23 14:47:55.0883 INFO - WebSocket服务启动成功,端口号:20100
2023-02-23 14:47:55.0884 INFO - HTTP服务启动成功,端口号:20101
服务分为 HTTP 和 WebSocket 两部分,前者用于服务端提交消息,后者与客户端保持一个长连接用于消息推送,而服务本身就是将服务端提交的消息推送到指定的客户端上。
创建应用ID
服务运行起来后,我们需要为业务平台创建一个应用ID,只需要在终端输入以下命令即可:
java -cp v-socket.jar Create
按下回车键后终端会提示输入应用名称,我们正常输入后按下回车键即可得到
请输入应用名称:
测试
正在创建...
已成功创建应用 e0d9a699c830095c5b8c548bb4f73a46
你可以使用以下SQL在 certificate 表里查找对应的记录:
SELECT * FROM certificate WHERE appid = 'e0d9a699c830095c5b8c548bb4f73a46';
默认配置下会在执行目录创建一个 database.db 的文件,这是SQLite 数据库的存储文件,我们可以用数据库软件(比如Navicat)连接它,执行终端返回的那条SQL就可以获得应用ID和RSA密钥
服务端推送消息
我们可以发起一个POST application/json 请求到 127.0.0.1:20101 上,提交一段以下内容:
[
{"id": "10000","message": "push a message"},
{"id": "10001","message": "push a message again"}
]
这样我们就分别为 ID 为10000和10001的用户推送了一条消息了。
客户端登录
客户端登录分为两个步骤,首先需要先由服务端使用应用ID和RSA公钥计算出登录凭证,这一步我们可以参考项目文档