zoukankan      html  css  js  c++  java
  • Python测试Websocket接口

    前言

    Websocket的详解不再介绍,我的上一篇文章已经介绍过了。

    安装

    pip install websocket
    


    运行会报错,还需要依赖包websocket-client

    pip install websocket-client
    

    示例

    使用一个demo测试网站:https://www.websocket.org/echo.html 进行演示。

    import json
    from websocket import create_connection
    
    url = 'wss://echo.websocket.org'#websocket连接地址,地址为虚拟地址
    #websocket.enableTrace(True)                      #打开跟踪,查看日志
    while True:
        ws = create_connection(url)           #创建连接
        data =input('输入传输消息:')       #测试数据
        # new_data=json.dumps(data,ensure_ascii=False)     #将data转化为字符串
        ws.send(data)                                #发送请求
        print('收到回复消息:',ws.recv())                                 #打印服务器响应数据
        if data == 'q':
            ws.close()                                        #关闭连接
            break
    
    

    实战

    公司开发的websocket接口只是单纯的建立连接进行监听,并不支持发送和接受数据。

    import unittest
    from websocket import create_connection
    import websocket
    
    class Test_websoket(unittest.TestCase):
        def test_websk(self):
            '''websocket 消息推送:  /socketServer/${userId} '''
            url = 'ws://10.10.100.224:9997/socketServer/528'  # websocket连接地址
            websocket.enableTrace(True)  # 打开跟踪,查看日志
            ws = create_connection(url)  # 创建连接
            print(ws.getstatus())  # 打印连接状态
            self.assertEqual(101, ws.getstatus(), 'websocket连接错误')  # 断言连接状态
            # ws.settimeout(10)   #设置超时时间
            # print(ws.gettimeout())  #获取超时时间
            # ws.shutdown()  # 关闭连接
    
    if __name__ == '__main__':
        unittest.main()
    
    

    注意这里返回的状态是101,表示协议切换的意思,于是可以用来断言是否连接成功。

  • 相关阅读:
    java导入导出下载Excel,xls文件(带下拉框)
    java操作poi生成excel.xlsx(设置下拉框)下载本地和前端下载
    layui文件上传中如何先判断后再弹出文件选择框
    下载excle文件之工具
    eclipse 配置JDK
    layer实现关闭弹出层刷新父界面功能详解
    兼容ie9以下支持媒体查询和html5
    layui学习地址
    MATLAB拟合正态分布
    Matlab文件操作
  • 原文地址:https://www.cnblogs.com/huny/p/14079320.html
Copyright © 2011-2022 走看看