socket协议设计疑问

发布于 2021-11-30 23:31:43 字数 654 浏览 776 评论 4

请求协议:

当前设计的socekt通信协议,包含head,body,foot.

head长度8字节,前4个表示body长度,后4个表示协议版本号

body是变长的json字符串,包含字段:method(方法)、args(参数)、username(用户名)、platform(平台)、randomCode(随机数)、requestTime(请求时间)、signature(签名,客户端通过密码和时间随机数等计算出来)

foot是对前面head,body的加salt值MD5.定长32位。

返回协议:

结构和请求一样,body中的json格式为: code(状态码)、message(消息)、total(总量)、count(当前查询量)、data(数据)、responseType(返回的类型、比如是其他平台登录时收到的异步内容)。


传输数据可以使用gzip压缩。


现在提出这样的结构,在实际项目中是否有具体的问题,比如签名问题,使用websocket是否暴露了加密算法,有这方面经验的能提供一下你们现在的解决方案不,一点参考,或者有问题和疑问的地方也可以指出


如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

浅沫记忆 2021-12-04 16:20:44

Universal-Data-Communication-System-for-windows是通用数据传输-socket构架。码云开源项目

可通过10行代码完成全语言支持socket

此软件适用于,游戏服务端,及时通讯,数据传输,物联网数据获取,云数据互通,等大部分与网络数据传输有关的项目软件。数据内容可通过实体类对象之间发送出去,以JSON 数据形式编码,速度快,操作简单,数据安全。

此软件的基本思想是为了建立一套简单稳点可多负载的架构,通用数据通讯构建,设计基于TCP通信的交互框架。可支持,B/C(websocket),C/S,手机移动标准化的通信方式。达到后台业务一次编写,前台展示全线支持的目的。还可根据网络及负载 情况分布式部署网管与服务。

反目相谮 2021-12-04 15:54:00

body的签名可以不需要传递,直接通过foot的md5已经表达了这个意思。

这个协议在websocket下头是不能使用的,webscoket有自己的消息头。

兮颜 2021-12-03 20:24:49

body的加salt值MD5.定长32位。

贱贱哒 2021-12-03 08:26:59

body部分不做加密吗

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文