#跟着小白一起学鸿蒙#WebSocket的使用和流程分析 原创 精华
左翼风发
发布于 2023-2-22 16:25
浏览
2收藏
作者:王石
WebSocket是一种网络通讯协议,很多网络开发工作者都需要它。本文介绍在OpenHarmony上WebSocket协议的使用方法。
WebSocket有什么不同
很多人会问,有了HTTP协议,尤其是RESTFul接口,为什么还需要使用WebSocket?它能带来什么好处呢?那是因为HTTP协议有一个缺陷,通讯只能由客户端发起。简单举例,我们的天气应用程序需要查询天气就需要客户端向服务器请求数据,服务器查询后返回结果。但是如果天气有变化,客户端是无法收到服务端推送过来的消息,所以只能定时调用或者用户手动刷新。
这种单向请求导致需要双向通讯的应用只能在客户端采用轮询的手段来实现,引申出来的问题就是效率低,服务端负载大。所以就诞生了WebSocket。
WebSocket简介
WebSocket协议诞生于2008年,2011年成为国际标准,所有浏览器都支持。它最大的特点就是双向平等对话,属于服务器推送技术的一种。
- HTTP流程
- WebSocket流程
特点:
- 在TCP协议上层,服务器端的实现比较容易。
- 与HTTP协议有着良好的兼容性。默认端口也是80和443,并且握手阶段采用 HTTP 协议,因此握手时不容易屏蔽,能通过各种 HTTP 代理服务器。
- 数据格式比较轻量,性能开销小,通信高效。
- 可发送文本,也可发送二进制数据。
- 没有同源限制,客户端可以与任意服务器通信。
- 协议标识符是ws(如果加密,则为wss),服务器网址就是URL。
WebSocket在OpenHarmony上的实现
WebSocket在OpenHarmony上的使用
- 导入d.ts文件
- 基本的websocket流程
Framework层的实现
- Napi接口实现
- 异步执行动作
- 执行结果日志打印
小结
OpenHarmony目前已支持WebSocket调用,通过回调函数返回调用结果。
©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
分类
赞
2
收藏 2
回复
2
1
2
相关推荐
这样看来如果做聊天类的软件WebSocket会更有优势