成人视屏在线观看-国产99精品-国产精品1区2区-欧美一级在线观看-国产一区二区日韩-色九九九

您的位置:首頁技術文章
文章詳情頁

用Python進行websocket接口測試

瀏覽:4日期:2022-07-08 09:09:31

我們在做接口測試時,除了常見的http接口,還有一種比較多見,就是socket接口,今天講解下怎么用Python進行websocket接口測試。

現在大多數用的都是websocket,那我們就先來安裝一下websocket的安裝包。

pip install websocket-client

用Python進行websocket接口測試

安裝完之后,我們就開始我們的websocket之旅了。

我們先來看個炒雞簡單的栗子:

import websocketws = websocket.WebSocket()ws.connect('ws://example.com/websocket', http_proxy_host='proxy_host_name', http_proxy_port=3128)

這個栗子就是創建一個websocket連接,這個模塊支持通過http代理訪問websocket。代理服務器允許使用connect方法連接到websocket端口。默認的squid設置是“只允許連接HTTPS端口”。

在websocket里,我們有常用的這幾個方法:

on_message方法:

def on_message(ws, message): print(message)

on_message是用來接受消息的,server發送的所有消息都可以用on_message這個方法來收取。

on_error方法:

def on_error(ws, error): print(error)

這個方法是用來處理錯誤異常的,如果一旦socket的程序出現了通信的問題,就可以被這個方法捕捉到。

on_open方法:

def on_open(ws): def run(*args): for i in range(30): # send the message, then wait # so thread doesn’t exit and socket # isn’t closed ws.send('Hello %d' % i) time.sleep(1) time.sleep(1) ws.close() print('Thread terminating...') Thread(target=run).start()

on_open方法是用來保持連接的,上面這樣的一個例子,就是保持連接的一個過程,每隔一段時間就會來做一件事,他會在30s內一直發送hello。最后停止。

on_close方法:

def on_close(ws): print('### closed ###')

onclose主要就是關閉socket連接的。

如何創建一個websocket應用:

ws = websocket.WebSocketApp('wss://echo.websocket.org')

括號里面就是你要連接的socket的地址,在WebSocketApp這個實例化的方法里面還可以有其他參數,這些參數就是我們剛剛介紹的這些方法。

ws = websocket.WebSocketApp('ws://echo.websocket.org/', on_message=on_message, on_error=on_error, on_close=on_close)

指定了這些參數之后就可以直接進行調用了,例如:

ws.on_open = on_open

這樣就是調用了on_open方法

如果我們想讓我們的socket保持長連接,一直連接著,就可以使用run_forever方法:

ws.run_forever()

完整代碼:

import websocketfrom threading import Threadimport timeimport sysdef on_message(ws, message): print(message)def on_error(ws, error): print(error)def on_close(ws): print('### closed ###')def on_open(ws): def run(*args): for i in range(3): # send the message, then wait # so thread doesn’t exit and socket # isn’t closed ws.send('Hello %d' % i) time.sleep(1) time.sleep(1) ws.close() print('Thread terminating...') Thread(target=run).start()if __name__ == '__main__': websocket.enableTrace(True) host = 'ws://echo.websocket.org/' ws = websocket.WebSocketApp(host,on_message=on_message,on_error=on_error,on_close=on_close) ws.on_open = on_open ws.run_forever()

如果想要通信一條短消息,并在完成后立即斷開連接,我們可以使用短連接:

from websocket import create_connectionws = create_connection('ws://echo.websocket.org/')print('Sending ’Hello, World’...')ws.send('Hello, World')print('Sent')print('Receiving...')result = ws.recv()print('Received ’%s’' % result)ws.close()

關于websocket的介紹就到這兒了。

以上就是用Python進行websocket接口測試的詳細內容,更多關于python 接口測試的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 911精品国产91久久久久 | 亚洲福利国产精品17p | 男女免费视频 | 欧美xxxx色视频在线观看 | 久久99国产亚洲高清观看韩国 | 国产精品美女视视频专区 | 亚洲第一网色综合久久 | 999久久久精品视频在线观看 | 中国女人毛茸茸免费视频 | a欧美 | 欧美xo影院 | 宅女福利视频在线看免费网站 | 日韩在线观看中文字幕 | 色欧美与xxxxx | 欧美一级久久久久久久大片 | 久操中文在线 | 天堂中文字幕 | 欧美另类精品 | 国内精品久久久久久影院8f | 久久精品成人免费网站 | 亚洲成年网| 亚洲人在线 | 日韩一级片播放 | 久久久精品国产免费观看同学 | 亚洲欧美综合国产不卡 | 男女免费观看视频 | 中文字幕在线播放视频 | 99久久精品免费看国产一区二区三区 | 日本高清精品 | 欧美日韩国产在线人成dvd | 国产精品九九九久久九九 | 亚洲视频区| 日韩不卡一级毛片免费 | 亚洲免费高清视频 | 亚洲欧美另类色妞网站 | 美女131爽爽爽做爰中文视频 | 精品热99 | 国产日韩欧美一区 | 一级毛片免费观看久 | 男人都懂的网址在线看片 | 欧美一级大片免费观看 |