Websocket获取B站直播间弹幕教程 — 哔哩哔哩直播开放平台

本文详细介绍了如何在Bilibili直播平台上获取秘钥、设置项目心跳、关闭项目以及通过WebSocket连接弹幕服务器的过程,包括请求签名和B站Websocket协议的使用。

一、首先、获取直播开放平台 秘钥

  1. 进入
    哔哩哔哩直播开放平台:https://open-live.bilibili.com/
  2. 注册申请个人开发者认证,获得access_key_id 和 access_key_secred
  3. 进入bilibili创作者服务中心 -> 创建项目 -> 获得项目ID( app_id )

官方文档:https://open-live.bilibili.com/document/eba8e2e1-847d-e908-2e5c-7a1ec7d9266f

二、开启/关闭你项目时 需要发送的请求

注意:Post参数需要签名加密,并且设置到请求头;设置完后才能成功获得/app/start的响应,获得直接间弹幕服务器连接地址和鉴权信息;
可以在下面找到签名方法。

1. 获取直接间弹幕服务器信息
post请求 https://open-live.bilibili.com/v2/app/start
post参数:

参数名 类型 描述
code string 主播身份码:身份码是随机生成的,会绑定自己的直播间,可以进入自己的直播中心获取
app_id integer 项目ID

响应:

{
   
   
    "code": 0,
    "message": "ok",
    "data": {
   
   
        //  场次信息
        "game_info": {
   
   
            //  场次id,心跳key(心跳保持20s-60s)调用一次,超过60s无心跳自动关闭,长连停止推送消息
            "game_id": ""
        },
        //  长连信息
        "websocket_info": {
   
   
            //  长连使用的请求json体 第三方无需关注内容,建立长连时使用即可
            "auth_body": "",
            //  wss 长连地址
            "wss_link": [...]
        },
        //  主播信息
        "anchor_info": {
   
   ...}
    }
}

game_id: 为场次id, 未上线前这个返回值好像是空的
websocket_info: 获取弹幕服务器地址wss_link 和 用于鉴权的auth_body

2. 保持项目心跳,每隔20s发送一次
post请求: https://open-live.bilibili.com/v2/app/heartbeat
post参数:

参数名 类型 描述
game_id string 场次id

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码鹿的笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值