-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Open
Description
版本
青龙版本号:2.20.0
BiliTool版本号:3.8.1
确认
- [ √] 是的,我已搜索并确认,没有其他相同的议题
- [ √] 是的,我确认,已尝试升级到最新版,但未解决
服务器架构
- [√ ] x64
- arm64
- arm
- 其他(请在下面补充)
服务器系统
- Windows
- macOS
- [√ ] Linux
- Debian
- Ubuntu
- Windows
- Alpine
- Centos
- [√ ] 其他rockylinux10
选择的BiliTool运行模式
- docker
- [ √] podman
- 下载的Release包
- 其他(请在下面补充)
问题描述
<获取排行榜数据时出现 JSON 反序列化错误>
在执行每日任务时,"观看、分享视频" 步骤中遇到了问题。错误信息提示 BiliApiResponse 对象的 JSON 反序列化出错,缺少了必需的 data 属性。
日志信息
Details
[10:03:43 INF] =====开始 每日任务 =====
[10:03:43 INF] ---开始 Set Cookie ---
[10:03:43 INF] Cookie完整,不需要Set Cookie
[10:03:43 INF] -------------结束-------------
[10:03:43 INF] ---开始 登录 ---
[10:03:59 INF] 【用户名】xxxxx
[10:03:59 INF] 【会员类型】无
[10:03:59 INF] 【会员状态】无/过期
[10:03:59 INF] 【硬币余额】73
[10:03:59 INF] 【距升级Lv5】预计133天
[10:03:59 INF] 登录成功,经验+5 √
[10:03:59 INF] -----结束-----
[10:04:10 INF] ---开始 观看、分享视频 ---
[10:04:42 ERR] [REQUEST]
GET /x/web-interface/ranking/v2?rid=0&type=all HTTP/1.1
Referer: https://www.bilibili.com/
Origin: https://www.bilibili.com
dnt: 1
Host: api.bilibili.com
Accept: application/json, text/plain, */*, application/json; q=0.1, application/xml; q=0.1
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: same-site
Connection: keep-alive
[RESPONSE]
HTTP/1.1 200 OK
Date: Fri, 12 Dec 2025 02:04:42 GMT
Connection: keep-alive
Bili-Status-Code: -352
X-Bili-Gaia-Vvoucher: voucher_47049d43-5866-4095-a8bd-c0e2a15e20e0
X-Rid-Result: 2
X-Ticket-Status: 1
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: GET,POST,PUT,DELETE,PATCH,HEAD,OPTIONS
Access-Control-Allow-Origin: https://www.bilibili.com
Access-Control-Allow-Headers: origin,no-cache,x-requested-with,if-modified-since,pragma,last-modified,cache-control,expires,content-type,access-control-allow-credentials,dnt,x-customheader,keep-alive,user-agent,x-cache-webcdn,x-bilibili-key-real-ip,x-backend-bili-real-ip,x-risk-header,x-event-traceid
Access-Control-Expose-Headers: x-bili-gaia-vvoucher,x-bili-trace-id,x-bili-gaia-param, X-Cache-Webcdn
Cross-Origin-Resource-Policy: cross-origin
Cache-Control: no-cache
X-Cache-Webcdn: BYPASS from blzone01
Content-Type: application/json; charset=utf-8
Content-Length: 39
Expires: Fri, 12 Dec 2025 02:04:41 GMT
{"code":-352,"message":"-352","ttl":1}
[EXCEPTION]
System.Text.Json.JsonException: JSON deserialization for type 'Ray.BiliBiliTool.Agent.BiliBiliAgent.Dtos.BiliApiResponse`1[Ray.BiliBiliTool.Agent.BiliBiliAgent.Dtos.Ranking]' was missing required properties, including the following: data
at System.Text.Json.ThrowHelper.ThrowJsonException_JsonRequiredPropertyMissing(JsonTypeInfo parent, BitArray requiredPropertiesSet)
at System.Text.Json.Serialization.Converters.ObjectDefaultConverter`1.OnTryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value)
at System.Text.Json.Serialization.JsonConverter`1.TryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value, Boolean& isPopulatedValue)
at System.Text.Json.Serialization.JsonConverter`1.ReadCore(Utf8JsonReader& reader, JsonSerializerOptions options, ReadStack& state)
at System.Text.Json.Serialization.Metadata.JsonTypeInfo`1.ContinueDeserialize(ReadBufferState& bufferState, JsonReaderState& jsonReaderState, ReadStack& readStack)
at System.Text.Json.Serialization.Metadata.JsonTypeInfo`1.DeserializeAsync(Stream utf8Json, CancellationToken cancellationToken)
at System.Text.Json.Serialization.Metadata.JsonTypeInfo`1.DeserializeAsObjectAsync(Stream utf8Json, CancellationToken cancellationToken)
at System.Net.Http.Json.HttpContentJsonExtensions.ReadFromJsonAsyncCore(HttpContent content, Type type, JsonSerializerOptions options, CancellationToken cancellationToken)
at WebApiClientCore.ApiResponseContextExtensions.JsonDeserializeAsync(ApiResponseContext context, Type objType)
at WebApiClientCore.Attributes.JsonReturnAttribute.SetResultAsync(ApiResponseContext context)
at WebApiClientCore.Attributes.ApiReturnAttribute.OnResponseAsync(ApiResponseContext context)
at WebApiClientCore.Implementations.ApiRequestExecutor.HandleResponseAsync(ApiResponseContext context)
[ELAPSED] 00:00:17.0993983
[10:04:42 ERR] 观看、分享视频失败,继续其他任务。失败信息:JSON deserialization for type 'Ray.BiliBiliTool.Agent.BiliBiliAgent.Dtos.BiliApiResponse`1[Ray.BiliBiliTool.Agent.BiliBiliAgent.Dtos.Ranking]' was missing required properties, including the following: data
[10:04:42 INF] ----------结束----------
[10:04:42 INF] ---开始 投币 ---
[10:04:57 INF] 【今日已投】0枚
[10:04:57 INF] 【目标欲投】5枚
[10:04:57 INF] 【还需再投】5枚
[10:05:08 INF] 【投币前余额】 : 73
[10:05:53 ERR] [REQUEST]
GET /x/web-interface/ranking/v2?rid=0&type=all HTTP/1.1
Referer: https://www.bilibili.com/
Origin: https://www.bilibili.com
dnt: 1
Host: api.bilibili.com
Accept: application/json, text/plain, */*, application/json; q=0.1, application/xml; q=0.1
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: same-site
Connection: keep-alive
[RESPONSE]
HTTP/1.1 200 OK
Date: Fri, 12 Dec 2025 02:05:53 GMT
Connection: keep-alive
Bili-Status-Code: -352
X-Bili-Gaia-Vvoucher: voucher_a3f08100-90ea-47dc-9e00-251cc13ae88a
X-Rid-Result: 2
X-Ticket-Status: 1
Access-Control-Allow-Headers: origin,no-cache,x-requested-with,if-modified-since,pragma,last-modified,cache-control,expires,content-type,access-control-allow-credentials,dnt,x-customheader,keep-alive,user-agent,x-cache-webcdn,x-bilibili-key-real-ip,x-backend-bili-real-ip,x-risk-header,x-event-traceid
Cross-Origin-Resource-Policy: cross-origin
Access-Control-Allow-Origin: https://www.bilibili.com
Access-Control-Allow-Credentials: true
Access-Control-Expose-Headers: x-bili-gaia-vvoucher,x-bili-trace-id,x-bili-gaia-param, X-Cache-Webcdn
Access-Control-Allow-Methods: GET,POST,PUT,DELETE,PATCH,HEAD,OPTIONS
Cache-Control: no-cache
X-Cache-Webcdn: BYPASS from blzone03
Content-Type: application/json; charset=utf-8
Content-Length: 39
Expires: Fri, 12 Dec 2025 02:05:52 GMT
{"code":-352,"message":"-352","ttl":1}
[EXCEPTION]
System.Text.Json.JsonException: JSON deserialization for type 'Ray.BiliBiliTool.Agent.BiliBiliAgent.Dtos.BiliApiResponse`1[Ray.BiliBiliTool.Agent.BiliBiliAgent.Dtos.Ranking]' was missing required properties, including the following: data
at System.Text.Json.ThrowHelper.ThrowJsonException_JsonRequiredPropertyMissing(JsonTypeInfo parent, BitArray requiredPropertiesSet)
at System.Text.Json.Serialization.Converters.ObjectDefaultConverter`1.OnTryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value)
at System.Text.Json.Serialization.JsonConverter`1.TryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value, Boolean& isPopulatedValue)
at System.Text.Json.Serialization.JsonConverter`1.ReadCore(Utf8JsonReader& reader, JsonSerializerOptions options, ReadStack& state)
at System.Text.Json.Serialization.Metadata.JsonTypeInfo`1.DeserializeAsync(Stream utf8Json, CancellationToken cancellationToken)
at System.Text.Json.Serialization.Metadata.JsonTypeInfo`1.DeserializeAsObjectAsync(Stream utf8Json, CancellationToken cancellationToken)
at System.Net.Http.Json.HttpContentJsonExtensions.ReadFromJsonAsyncCore(HttpContent content, Type type, JsonSerializerOptions options, CancellationToken cancellationToken)
at WebApiClientCore.ApiResponseContextExtensions.JsonDeserializeAsync(ApiResponseContext context, Type objType)
at WebApiClientCore.Attributes.JsonReturnAttribute.SetResultAsync(ApiResponseContext context)
at WebApiClientCore.Attributes.ApiReturnAttribute.OnResponseAsync(ApiResponseContext context)
at WebApiClientCore.Implementations.ApiRequestExecutor.HandleResponseAsync(ApiResponseContext context)
[ELAPSED] 00:00:13.0865927
[10:05:53 WRN] 异常:System.Net.Http.HttpRequestException: JSON deserialization for type 'Ray.BiliBiliTool.Agent.BiliBiliAgent.Dtos.BiliApiResponse`1[Ray.BiliBiliTool.Agent.BiliBiliAgent.Dtos.Ranking]' was missing required properties, including the following: data
---> System.Text.Json.JsonException: JSON deserialization for type 'Ray.BiliBiliTool.Agent.BiliBiliAgent.Dtos.BiliApiResponse`1[Ray.BiliBiliTool.Agent.BiliBiliAgent.Dtos.Ranking]' was missing required properties, including the following: data
at System.Text.Json.ThrowHelper.ThrowJsonException_JsonRequiredPropertyMissing(JsonTypeInfo parent, BitArray requiredPropertiesSet)
at System.Text.Json.Serialization.Converters.ObjectDefaultConverter`1.OnTryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value)
at System.Text.Json.Serialization.JsonConverter`1.TryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value, Boolean& isPopulatedValue)
at System.Text.Json.Serialization.JsonConverter`1.ReadCore(Utf8JsonReader& reader, JsonSerializerOptions options, ReadStack& state)
at System.Text.Json.Serialization.Metadata.JsonTypeInfo`1.DeserializeAsync(Stream utf8Json, CancellationToken cancellationToken)
at System.Text.Json.Serialization.Metadata.JsonTypeInfo`1.DeserializeAsObjectAsync(Stream utf8Json, CancellationToken cancellationToken)
at System.Net.Http.Json.HttpContentJsonExtensions.ReadFromJsonAsyncCore(HttpContent content, Type type, JsonSerializerOptions options, CancellationToken cancellationToken)
at WebApiClientCore.ApiResponseContextExtensions.JsonDeserializeAsync(ApiResponseContext context, Type objType)
at WebApiClientCore.Attributes.JsonReturnAttribute.SetResultAsync(ApiResponseContext context)
at WebApiClientCore.Attributes.ApiReturnAttribute.OnResponseAsync(ApiResponseContext context)
at WebApiClientCore.Implementations.ApiRequestExecutor.HandleResponseAsync(ApiResponseContext context)
at WebApiClientCore.Implementations.DefaultApiActionInvoker`1.InvokeAsync(ApiRequestContext request)
at WebApiClientCore.Implementations.DefaultApiActionInvoker`1.InvokeAsync(HttpClientContext context, Object[] arguments)
--- End of inner exception stack trace ---
at WebApiClientCore.Implementations.DefaultApiActionInvoker`1.InvokeAsync(HttpClientContext context, Object[] arguments)
at Ray.BiliBiliTool.DomainService.VideoDomainService.GetRandomVideoOfRanking() in /ql/data/repo/RayWangQvQ_BiliBiliToolPro/src/Ray.BiliBiliTool.DomainService/VideoDomainService.cs:line 45
at Ray.BiliBiliTool.DomainService.DonateCoinDomainService.TryGetCanDonateVideoByRegion(Int32 tryCount, BiliCookie ck) in /ql/data/repo/RayWangQvQ_BiliBiliToolPro/src/Ray.BiliBiliTool.DomainService/DonateCoinDomainService.cs:line 305
[10:06:27 ERR] [REQUEST]
GET /x/web-interface/ranking/v2?rid=0&type=all HTTP/1.1
Referer: https://www.bilibili.com/
Origin: https://www.bilibili.com
dnt: 1
Host: api.bilibili.com
Accept: application/json, text/plain, */*, application/json; q=0.1, application/xml; q=0.1
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: same-site
Connection: keep-alive
[RESPONSE]
HTTP/1.1 200 OK
Date: Fri, 12 Dec 2025 02:06:27 GMT
Connection: keep-alive
Bili-Status-Code: -352
X-Bili-Gaia-Vvoucher: voucher_7fa434cc-40b2-43f2-9972-961448dc3b17
X-Rid-Result: 2
X-Ticket-Status: 1
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: GET,POST,PUT,DELETE,PATCH,HEAD,OPTIONS
Access-Control-Allow-Origin: https://www.bilibili.com
Access-Control-Allow-Headers: origin,no-cache,x-requested-with,if-modified-since,pragma,last-modified,cache-control,expires,content-type,access-control-allow-credentials,dnt,x-customheader,keep-alive,user-agent,x-cache-webcdn,x-bilibili-key-real-ip,x-backend-bili-real-ip,x-risk-header,x-event-traceid
Access-Control-Expose-Headers: x-bili-gaia-vvoucher,x-bili-trace-id,x-bili-gaia-param, X-Cache-Webcdn
Cross-Origin-Resource-Policy: cross-origin
Cache-Control: no-cache
X-Cache-Webcdn: BYPASS from blzone01
Content-Type: application/json; charset=utf-8
Content-Length: 39
Expires: Fri, 12 Dec 2025 02:06:26 GMT
{"code":-352,"message":"-352","ttl":1}
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels