python websocket服务端
时间: 2023-08-29 07:10:24 浏览: 100
Python 中可以使用第三方库 `websockets` 来实现 WebSocket 服务端。以下是一个简单的 WebSocket 服务端示例代码:
```python
import asyncio
import websockets
async def echo(websocket, path):
async for message in websocket:
await websocket.send(message)
async def main():
async with websockets.serve(echo, "localhost", 8765):
await asyncio.Future() # keep the server running
asyncio.run(main())
```
在上面的示例代码中,我们定义了一个名为 `echo` 的协程函数,该函数接收两个参数,一个是 WebSocket 连接对象 `websocket`,另一个是请求路径 `path`。在这个函数中,我们使用了异步迭代器 `async for` 来循环接收来自客户端的消息,并使用 `await websocket.send(message)` 来将接收到的消息发送回客户端。
然后我们使用 `websockets.serve()` 函数来创建 WebSocket 服务端,该函数接收两个参数,一个是 `echo` 函数,另一个是绑定的地址和端口号。最后我们使用 `asyncio.Future()` 来保持服务器一直运行。
你可以使用类似于以下命令来运行这个示例代码:
```
python server.py
```
其中 `server.py` 是你保存示例代码的文件名。这将会启动一个 WebSocket 服务端,监听本地地址 `localhost` 的 `8765` 端口,等待客户端的连接。
阅读全文