抖音弹幕游戏开发之第3集:WebSocket基础知识·优雅草云桧·卓伊凡

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

抖音弹幕游戏开发之第3集:WebSocket基础知识·优雅草云桧·卓伊凡

第3集:WebSocket基础知识

什么是WebSocket

WebSocket是一种网络通信协议,可以让服务器和客户端之间进行实时的双向通信。

HTTP vs WebSocket

|------|-----------|-----------|
| 特性 | HTTP | WebSocket |
| 通信方式 | 单向(请求-响应) | 双向 |
| 连接状态 | 短连接 | 长连接 |
| 实时性 | 需要轮询 | 服务器主动推送 |
| 适用场景 | 网页浏览 | 实时通信 |

为什么需要WebSocket

直播间的弹幕是实时的!观众随时可能发送弹幕,我们需要立即收到这些数据。

  • 用HTTP:需要不停地问服务器"有新弹幕吗?",效率低
  • 用WebSocket:服务器有新弹幕就主动推送,像订阅消息一样

WebSocket工作流程

复制代码
1. 客户端发起连接请求
      ↓
2. 服务器接受连接(握手)
      ↓
3. 双方自由发送/接收消息
      ↓
4. 任意一方关闭连接

接口文档关键信息

服务地址

复制代码
ws://localhost:12011
  • ws - WebSocket协议标识
  • localhost - 本地服务器
  • 12011 - 端口号

连接方式

标准WebSocket连接,无需认证。

数据格式

所有数据都是JSON格式:

复制代码
{
    "uid": "用户ID",
    "name": "用户昵称",
    "msgType": "弹幕",
    "content": "弹幕内容"
}

消息类型

|----|---------|---------------------|
| 类型 | 说明 | 特有字段 |
| 弹幕 | 用户发送的文字 | content |
| 礼物 | 用户赠送的礼物 | giftName, giftCount |
| 点赞 | 用户点赞行为 | count |
| 关注 | 用户关注主播 | - |
| 进房 | 用户进入直播间 | memberCount |

本集总结

  • ✅ 理解WebSocket是什么,为什么需要它
  • ✅ 了解WebSocket的工作流程
  • ✅ 熟悉接口文档的关键信息
  • ✅ 了解JSON数据格式和消息类型

下一集:创建第一个WebSocket连接

相关推荐
小此方8 分钟前
Linux网络(二十):TCP拥塞控制与延迟应答详解:从拥塞窗口到TCP性能优化,理解TCP与UDP的效率差异
linux·网络·php
迪康coolmu31 分钟前
屏幕水印与防拍照落地:从水印类型到泄密溯源的完整配置
运维·网络·安全·网络安全·数据安全
AIgorithmGEEK37 分钟前
[Linux]HTTP 应用层协议全解(下篇)
linux·网络·网络协议·http·cookie·无连接·无状态
名誉寒冰43 分钟前
我是怎么理解 eBPF、AppArmor 和 Seccomp 的?
linux·网络·内核
DP DPharness1 小时前
手机连不上 DSH 时的排错顺序:从 401 到 WebSocket 放行
websocket·网络协议·智能手机
‎ദ്ദിᵔ.˛.ᵔ₎1 小时前
linux 进程间通信
linux·网络
91刘仁德1 小时前
传输层协议深度拆解:端口寻址、UDP 报文与 TCP 可靠性机制全解析
linux·网络·c++·网络协议·tcp/ip·udp·c
傲世仙尊2 小时前
TCP报头全解-序号确认应答与可靠性是一个准数
驱动开发·网络协议·tcp/ip
AIgorithmGEEK2 小时前
[Linux]HTTP 应用层协议全解(中篇)
linux·网络·网络协议·http
ai_xiaogui2 小时前
PanelAI 1.1.1重磅更新:秒级安装脚本优化 + 无公网IP算力节点组网,私有化AI管理平台全面升级
人工智能·网络协议·tcp/ip·api聚合管理·开发者ai一键部署·ai底层架构解析·ai应用快速变现