小白入门之构造一个简单的websocket测试场景

一、准备环境:

1.两套ubuntu 22.04的环境,
服务端(10.10.110.62),用户端(10.10.110.57)

2.环境中需要python3的编译环境

其实只要内核是linux操作系统都可以,现在开始装环境吧,超级简单,有手就行!

先登录到服务端后台,执行如下操作:

1.安装所需要的依赖包
pip install websocket-server websocket-client

二、构造脚本

2.在服务器端脚本如下:
websocket_simple_server.py

from websocket_server import WebsocketServer

def new_client(client, server):
    print("New client connected: {}".format(client['id']))

def message_received(client, server, message):
    print("Received message from client {}: {}".format(client['id'], message))
    # Echo the message back to the client
    server.send_message(client, "Echo: " + message)

def client_left(client, server):
    print("Client disconnected: {}".format(client['id']))

# Create a new server instance on port 8888
server = WebsocketServer(port=8888, host='0.0.0.0')  # 确保参数传递正确
server.set_fn_new_client(new_client)
server.set_fn_message_received(message_received)
server.set_fn_client_left(client_left)

print("WebSocket server started on port 8888")
server.run_forever()



在客户端脚本如下:
websocket_client_input.py

import websocket
import threading

def on_message(ws, message):
    print("Received message: {}".format(message))

def on_error(ws, error):
    print("Error: {}".format(error))

def on_close(ws):
    print("Connection closed")

def on_open(ws):
    print("Connected to server. You can start typing messages.")
    while True:
        message = input("Enter message to send (type 'exit' to quit): ")
        if message.lower() == 'exit':
            ws.close()
            break
        ws.send(message)

if __name__ == "__main__":
    ws = websocket.WebSocketApp("ws://2.2.2.56:8888/",  #改成服务器ip和端口
                                on_message=on_message,
                                on_error=on_error,
                                on_close=on_close)

    ws.on_open = on_open
    threading.Thread(target=ws.run_forever).start()

完成,现在开始运行代码!!

没有超时机制,大家可以无限的输入数据。

下一篇文章将告诉大家如何优化代码,实现超时、上传、下载等操作。
关注我 不错过!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值