文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

WebSocket接口怎么做测试

2023-09-02 08:19

关注

如果遇见了一个全新的协议,怎么从零开始,完成接口测试?以 WebSocket 为例。

  WebSocket 协议在2008年诞生,2011年成为国际标准。现在所有浏览器都已经支持了。WebSocket 的最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话。

WebSocket 的其他特点:

• 建立在 TCP 协议之上,服务器端的实现比较容易。

• 与 HTTP 协议有着良好的兼容性。默认端口也是80和443,并且握手阶段采用 HTTP 协议,因此握手时不容易屏蔽,能通过各种 HTTP 代理服务器。

• 数据格式比较轻量,性能开销小,通信高效。

• 可以发送文本,也可以发送二进制数据。

• 没有同源限制,客户端可以与任意服务器通信。

• 协议标识符是ws(如果加密,则为wss),服务器网址就是 URL。

ws–>http(未加密) 无证书
wss–>https(加密) 有证书

第一步:

     很多时候第一反应向开发工程师求助,因为开发工程师基于新协议已经完成了接口开发,向开发工程师求助显然是最好的办法。找到一些学习脉络,包含了协议的说明文档、代码开发文档、实现代码等内容,了解协议的原理。向开发求助是个方法。     那么 WebSocket 用 Fiddler 怎么搞定?,其实主要就是修改了 Fiddler 中 Rules 下的 Customize Rules,如果感兴趣可以自己去搜一下。当面对陌生技术问题的时候,应该使用最熟悉的技术去尝试解决问题。虽然 Fiddler 截获 WebSocket 接口的办法,所截获的全部消息都在日志里面,根本无法操作。但是,可以借助 Fiddler 分析 WebSocket 的接口,一开始给 Fiddler 这款工具的定位一样,那就是通过它辅助分析我们的被测接口。处理HTTP、HTTPS,推荐用Fiddler。

但是在处理TCP,UDP 就用WireShark。Websocket是应用层协议,建立在 TCP 协议之上,服务器端的实现比较容易。因为应用层是在传输层的基础上包装数据,所以我们还是从底层开始了解Websocket到底是个啥?是如何工作的?

可以通过---- wireshark(网络封包分析软件)抓包工具抓到WebSocket接口
wireshark下载地址:https://www.wireshark.org/download.html

以下是python实现的websocket 接口连接。

#导入websocket的create_connection类
from websocket import create_connection

建立和WebSocket接口的链接

ws = create_connection(“ws://echo.websocket.org/”)

打印日志

print(“Hello, World”)

客户端发送Hello,World

ws.send(“Hello, World”)
print(“Receiving…”)

将WebSocket的返回值存储result变量

result = ws.recv()

打印返回的result

print(“Received ‘%s’” % result)

关闭WebSocket链接

ws.close()

建立和WebSocket接口的链接

ws = create_connection(“ws://echo.websocket.org/”)
执行上面语句之后,客户端就会与服务器进行连接。

实例对象的send()方法用于向服务器发送数据。
ws.send(“Hello, World”)

来源地址:https://blog.csdn.net/lzp_88/article/details/128128108

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-服务器
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯