抖音弹幕游戏开发之第4集:第一个WebSocket连接·优雅草云桧·卓伊凡

《抖音弹幕游戏开发专栏》是优雅草建立的专栏,由优雅草资深开发工程师云桂提供实战教学配对发布有对应的视频教程,以下内容为技术文稿,卓伊凡辅助。

抖音弹幕游戏开发之第4集:第一个WebSocket连接·优雅草云桧·卓伊凡

第4集:第一个WebSocket连接

创建main.py文件

在项目文件夹中创建 main.py 文件。

理解回调函数

回调函数就是"当某件事发生时,自动执行的函数"。

WebSocket常用的回调函数:

  • on_open - 连接成功时调用
  • on_message - 收到消息时调用
  • on_close - 连接关闭时调用
  • on_error - 发生错误时调用

完整代码

复制代码
import websocket

def on_open(ws):
    print("WebSocket连接成功!")

def on_close(ws, close_status_code, close_msg):
    print("WebSocket连接关闭")

def on_error(ws, error):
    print(f"发生错误: {error}")

# 创建WebSocket连接
ws = websocket.WebSocketApp(
    "ws://localhost:12011",
    on_open=on_open,
    on_close=on_close,
    on_error=on_error
)

ws.run_forever()

代码解析

导入库

复制代码
import websocket

定义回调函数

复制代码
def on_open(ws):
    print("WebSocket连接成功!")
  • def - 定义函数的关键字
  • ws - WebSocket连接对象参数
  • print - 打印输出

创建连接

复制代码
ws = websocket.WebSocketApp(
    "ws://localhost:12011",  # 服务器地址
    on_open=on_open,         # 传递函数名,不加括号
    on_close=on_close,
    on_error=on_error
)

启动连接

复制代码
ws.run_forever()  # 保持运行,持续监听

测试连接

前提:必须先启动"弹幕工具"

复制代码
python main.py

成功输出:

复制代码
WebSocket连接成功!

Ctrl+C 停止程序。

常见问题

|-------|-----------|---------|
| 问题 | 原因 | 解决方法 |
| 连接不上 | 弹幕工具未启动 | 先启动工具 |
| 端口被占用 | 12011端口冲突 | 检查端口 |
| 语法错误 | 代码有误 | 检查缩进和标点 |
| 防火墙阻止 | 网络限制 | 添加防火墙例外 |

本集总结

  • ✅ 创建main.py文件
  • ✅ 学习回调函数概念
  • ✅ 编写三个回调函数
  • ✅ 创建并测试WebSocket连接

下一集:接收第一条弹幕消息

相关推荐
Omics Pro7 分钟前
填补蛋白质组深度学习预处理教学空白
人工智能·python·深度学习·plotly·numpy·pandas·scikit-learn
月落归舟11 分钟前
并发编程之volatile深度解析(二)
java·开发语言·volatile
来恩100332 分钟前
Java Web三大作用域对象
java·开发语言·前端
ゆづき39 分钟前
Java 初学者入门指南:常见问题 + 核心知识点 + 进阶 20 道练习题
java·开发语言·学习·算法·水题
万邦科技Lafite1 小时前
实战演练:利用京东API一键抓取商品详情
数据库·redis·python·缓存·开放api·淘宝开放平台
TheRouter1 小时前
OpenClaw 上下文瘦身:3 个实验
开发语言·python·ai
LIUAWEIO1 小时前
接口 data 满屏反斜杠,怎么展开?
java·开发语言·数据库·json在线解析·data是字符串·json转义·二次json
wjs20241 小时前
MySQL 删除数据表
开发语言
lsx2024061 小时前
Dockerfile详解
开发语言
大树学长1 小时前
【QT开发】Windows 10 + Qt 5.15.2 手动编译安装 Qt OPC UA 模块完整记录
开发语言·windows·qt