From b6c4523eca0738f452f81855b54043a5a60d2bd8 Mon Sep 17 00:00:00 2001 From: OceanJiang Date: Fri, 28 Jan 2022 20:05:20 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E8=8E=B7=E5=8F=96=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E6=8C=81=E6=9C=89=E7=9A=84=E7=B2=89=E4=B8=9D=E5=8B=8B?= =?UTF-8?q?=E7=AB=A0=20api=20(#303)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- live/user.md | 324 ++++++++++++++++++--------------------------------- 1 file changed, 111 insertions(+), 213 deletions(-) diff --git a/live/user.md b/live/user.md index 95bbb96..18f49f0 100644 --- a/live/user.md +++ b/live/user.md @@ -1,6 +1,6 @@ -# 直播间用户实用API +# 直播间用户实用 API -- [直播间用户实用API](#直播间用户实用api) +- [直播间用户实用 API](#直播间用户实用-api) - [获取用户持有的粉丝勋章信息](#获取用户持有的粉丝勋章信息) - [佩戴勋章](#佩戴勋章) - [直播签到](#直播签到) @@ -9,121 +9,75 @@ ## 获取用户持有的粉丝勋章信息 -> http://api.live.bilibili.com/fans_medal/v5/live_fans_medal/iApiMedal +> ~~http://api.live.bilibili.com/fans_medal/v5/live_fans_medal/iApiMedal~~ +> +> https://api.live.bilibili.com/xlive/app-ucenter/v1/user/GetMyMedals -*请求方式:GET* +_请求方式:GET_ -认证方式:Cookie(SESSDATA)或APP +认证方式:Cookie(SESSDATA)或 APP -**url参数:** +**url 参数:** -| 参数名 | 类型 | 内容 | 必要性 | 备注 | -| ------ | ---- | ----------- | ------ | ---- | -| page | num | 返回结果页数 | 非必要 | 返回结果单页最大为10 | +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| --------- | ---- | ------------ | ------ | ------------------------------------------------- | +| page_size | num | 每页的数量 | 必要 | 最大为 10,超出 `1002002:参数异常` | +| page | num | 返回结果页数 | 必要 | 两个参数不填返回空,只 page 不填或错误则 500 异常 | -**json回复:** +**json 回复:** 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ---- | -------- | --------------------------- | -| code | num | 返回值 | 0:成功
-400:请求错误 | -| message | str | 错误信息 | 默认为空("") | -| msg | str | 错误信息 | 默认为空("") | -| data | obj | 信息本体 | | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ------------------------------------------------- | +| code | num | 返回值 | 0:成功
-1002002:参数异常
-500:服务器异常 | +| message | str | 错误信息 | 默认为 "0" | +| ttl | str | 1 | | +| data | obj | 信息本体 | | `data`对象: -| 字段 | 类型 | 内容 | 备注 | -| -------------- | ---- | ---------------- | ------------------------ | -| medalCount | num | 勋章数量 | | -| count | num | 勋章数量 | | -| fansMedalList | array | 粉丝勋章信息本体 | | -| name | str | 用户名 | | -| pageinfo | obj | 页码信息 | | +| 字段 | 类型 | 内容 | 备注 | +| --------- | ----- | ---------------- | ---- | +| count | num | 勋章数量 | | +| items | array | 粉丝勋章信息本体 | | +| page_info | obj | 页码信息 | | -`fansMedalList 数组内`对象: +`items 数组内`对象: -| 字段 | 类型 | 内容 | 备注 | -| -------------- | ---- | ---------------- | ------------------------ | -| uid | num | 发起请求的用户mid | | -| target_id | num | up主mid | | -| medal_id | num | 粉丝勋章id | | -| score | num | | | -| level | num | 勋章等级 | | -| intimacy | num | 当前已得亲密度 | | -| status | num | | | -| source | num | | | -| receive_channel | num | 获得方式 | 2:投币获得
3000:b坷拉 | -| is_receive | num | 勋章数量 | | -| master_status | num | | | -| receive_time | str | 勋章获取时间 | | -| today_intimacy | num | 本日亲密度 | | -| last_wear_time | num | 上次佩戴时间 | | -| is_lighted | num | 是否点亮 | 0:未点亮
1:点亮 | -| medal_level | num | 勋章等级 | | -| next_intimacy | num | 升级所需经验 | | -| day_limit | num | 日经验上限(原力值)| | -| medal_name | str | 勋章名 | | -| master_available | num | | | -| guard_type | num | 加成状态 | | -| lpl_status | num | | | -| can_delete | bool | 可否删除 | | -| target_name | str | up主用户名 | | -| target_face | str | up主头像 | | -| live_stream_status | num | 当前直播间放松状态 | | -| icon_code | num | | | -| icon_text | str | | | -| rank | str | | | -| medal_color | num | 勋章颜色信息 | 颜色数值为10进制的16进制值(下同) | -| medal_color_start | num | 勋章起始颜色 | 从右往左渐变(20级+勋章) | -| medal_color_end | num | 勋章结束颜色 | 从右往左渐变(20级+勋章) | -| guard_level | num | | | -| medal_color_border | num | 勋章颜色信息 | | -| today_feed | num | 本日亲密度 | | -| todayFeed | num | 同上 | | -| dayLimit | num | 日经验上限(原力值) | | -| uname | str | up主用户名 | | -| color | num | 勋章颜色 | | -| medalName | str | 勋章内容 | | -| guard_medal_title | str | 加成状态 | | -| anchorInfo | obj | up信息 | | -| roomid | num | 直播间房间号 | | +| 字段 | 类型 | 内容 | 备注 | +| ------------------ | ------ | -------------------- | -------------------------------------- | +| can_delete | bool | 可否删除 | | +| day_limit | num | 日经验上限(原力值) | eg: 1500 | +| guard_level | num | | | +| guard_medal_title | str | 加成状态 | | +| intimacy | num | 当前已得亲密度 | | +| is_lighted | num | 是否点亮 | 0:未点亮
1:点亮 | +| level | num | 勋章等级 | | +| medal_name | str | 勋章名 | | +| medal_color_border | num | 勋章边框颜色信息 | 颜色数值为 10 进制的 16 进制值(下同) | +| medal_color_start | num | 勋章起始颜色 | 从右往左渐变(20 级+勋章) | +| medal_color_end | num | 勋章结束颜色 | 从右往左渐变(20 级+勋章) | +| medal_id | num | 粉丝勋章 id | | +| next_intimacy | num | 升级所需经验 | | +| today_feed | num | 本日亲密度 | | +| roomid | num | 直播间房间号 | | +| status | num | | | +| target_id | number | up 主 mid | | +| target_name | str | up 主用户名 | | +| uname | str | up 主用户名 | | -`pageinfo`对象: +`page_info`对象: -| 字段 | 类型 | 内容 | 备注 | -| -------------- | ---- | ---------------- | ------------------------ | -| totalpages | num | 页码总长度 | | -| curPage | num | 当前返回的页码 | 0:未轮播
1:轮播 | - -`anchorInfo`对象: - -| 字段 | 类型 | 内容 | 备注 | -| -------------- | ---- | ---------------- | ------------------------ | -| uid | num | up主mid | | -| uname | str | up主用户名 | | -| gender | num | 性别 | 0:女
1:男
-1:保密 | -| face | str | up主头像 | | -| silence | num | up主禁言状态 | | -| masterVip | num | 会员类型 | | -| masterRank | num | 10000 | | -| masterLevel | num | up主主站等级 | | -| masterHeadpic | str | up主头像框 | | -| masterVerify | num | | | -| mobileVerified | num | 当前返回的页码 | | -| identification | num | 当前返回的页码 | | -| official | obj | 认证信息 | | -| rank | num | 当前返回的页码 | | -| platform_user_level | num | up主主站等级 | | -| vip_type | num | 会员类型 | | -| mobile_verify | num | | | -| official_verify | obj | 认证信息 | | +| 字段 | 类型 | 内容 | 备注 | +| ---------- | ---- | -------------- | ---- | +| total_page | num | 页码总长度 | | +| cur_page | num | 当前返回的页码 | | **示例:** ```shell -curl https://api.live.bilibili.com/fans_medal/v5/live_fans_medal/iApiMedal \ +curl https://api.live.bilibili.com/xlive/app-ucenter/v1/user/GetMyMedals?page=1&page_size=10 \ -b "SESSDATA=xxx" ``` @@ -132,93 +86,39 @@ curl https://api.live.bilibili.com/fans_medal/v5/live_fans_medal/iApiMedal \ ```json { - "code": 0, - "msg": "", - "message": "", - "data": { - "medalCount": 20, - "count": 19, - "fansMedalList": [ - { - "uid": 1, - "target_id": 3821157, - "medal_id": 283582, - "score": 16031, - "level": 11, - "intimacy": 1130, - "status": 0, - "source": 1, - "receive_channel": 3000, - "is_receive": 1, - "master_status": 1, - "receive_time": "2021-07-24 23:06:03", - "today_intimacy": 252, - "last_wear_time": 1630386090, - "is_lighted": 1, - "medal_level": 11, - "next_intimacy": 10000, - "day_limit": 1500, - "medal_name": "秧歌星", - "master_available": 1, - "guard_type": 0, - "lpl_status": 0, - "can_delete": true, - "target_name": "东爱璃Lovely", - "target_face": "https://i0.hdslb.com/bfs/face/fecabd8cb7cc129fd3bdbc4b71cffec91d342bdd.jpg", - "live_stream_status": 0, - "icon_code": 0, - "icon_text": "", - "rank": "", - "medal_color": 9272486, - "medal_color_start": 9272486, - "medal_color_end": 9272486, - "guard_level": 0, - "medal_color_border": 9272486, - "today_feed": 252, - "todayFeed": 252, - "dayLimit": 1500, - "uname": "东爱璃Lovely", - "color": 9272486, - "medalName": "秧歌星", - "guard_medal_title": "未开启加成", - "anchorInfo": { - "uid": 3821157, - "uname": "东爱璃Lovely", - "gender": -1, - "face": "https://i0.hdslb.com/bfs/face/fecabd8cb7cc129fd3bdbc4b71cffec91d342bdd.jpg", - "silence": 0, - "masterVip": 2, - "masterRank": 10000, - "masterLevel": 6, - "masterHeadpic": "https://i0.hdslb.com/bfs/garb/ebe4ac76f95ccb9146fdba2db2723f182ec3276b.png", - "masterVerify": 0, - "mobileVerified": 1, - "identification": 1, - "official": { - "role": 7, - "title": "bilibili 直播高能主播", - "desc": "" - }, - "rank": 10000, - "platform_user_level": 6, - "vip_type": 2, - "mobile_verify": 0, - "official_verify": { - "role": 7, - "title": "bilibili 直播高能主播", - "desc": "", - "type": -1 - } - }, - "roomid": 21692711 - } - ], - "name": "xxx", - "pageinfo": { - "totalpages": 2, - "curPage": 2 - } - } + "code": 0, + "message": "0", + "ttl": 1, + "data": { + "items": [ + { + "can_deleted": true, + "day_limit": 1500, + "guard_level": 0, + "guard_medal_title": "未开启加成", + "intimacy": 9617, + "is_lighted": 0, + "level": 11, + "medal_name": "锦依卫", + "medal_color_border": 12632256, + "medal_color_end": 12632256, + "medal_color_start": 12632256, + "medal_id": 29245, + "next_intimacy": 10000, + "today_feed": 0, + "roomid": 1546736, + "status": 0, + "target_id": 36081646, + "target_name": "洛天依", + "uname": "洛天依" + } + ], + "page_info": { + "cur_page": 1, + "total_page": 1 + }, + "count": 1 + } } ``` @@ -228,30 +128,30 @@ curl https://api.live.bilibili.com/fans_medal/v5/live_fans_medal/iApiMedal \ > http://api.live.bilibili.com/xlive/web-room/v1/fansMedal/wear -*请求方式:POST* +_请求方式:POST_ **表单参数:** -| 参数名 | 类型 | 内容 | 必要性 | 备注 | -| ---------- | ---- | -------------------- | ---- | ---- | -| medal_id | num | 勋章id | 必要 | | -| csrf | num | cookie中bili_jct字段 | 必要 | | -| csrf_token | num | 同上 | 必要 | | +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| ---------- | ---- | ----------------------- | ------ | ---- | +| medal_id | num | 勋章 id | 必要 | | +| csrf | num | cookie 中 bili_jct 字段 | 必要 | | +| csrf_token | num | 同上 | 必要 | | -**json回复:** +**json 回复:** 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ---- | -------- | --------------------------- | -| code | num | 返回值 | 0:成功 | -| ttl | str | 1 | | -| message | str | 错误信息 | 默认为佩戴成功 | -| data | obj | 信息本体 | 默认为无 | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | -------------- | +| code | num | 返回值 | 0:成功 | +| ttl | str | 1 | | +| message | str | 错误信息 | 默认为佩戴成功 | +| data | obj | 信息本体 | 默认为无 | **示例:** -佩戴勋章id为1的勋章 +佩戴勋章 id 为 1 的勋章 ```JavaScript var madelForm = new FormData(); @@ -280,10 +180,10 @@ $.ajax({ ```json { - "code": 0, - "message": "佩戴成功", - "ttl": 1, - "data": {} + "code": 0, + "message": "佩戴成功", + "ttl": 1, + "data": {} } ``` @@ -293,19 +193,17 @@ $.ajax({ > http://api.live.bilibili.com/xlive/web-ucenter/v1/sign/DoSign -*请求方式:GET* +_请求方式:GET_ -认证方式:Cookie(SESSDATA)或APP +认证方式:Cookie(SESSDATA)或 APP -**json回复:** +**json 回复:** 根对象: -| 字段 | 类型 | 内容 | 备注 | +| 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | ---------------------- | -| code | num | 返回值 | 0:成功
1:参数错误 | -| ttl | str | 1 | | -| message | str | 错误信息 | 默认为当日签到奖励内容 | -| data | obj | 信息本体 | 默认为空 | - - +| code | num | 返回值 | 0:成功
1:参数错误 | +| ttl | str | 1 | | +| message | str | 错误信息 | 默认为当日签到奖励内容 | +| data | obj | 信息本体 | 默认为空 |