OneDrive文件下载返回95字节内容

问题描述 投票:0回答:1

不知道具体是从什么时候开始,但有些通过Graph API从OneDrive下载的文件,会返回95字节的内容。而且都是这样的。

{"error":{"code": "serviceNotAvailable", "message": "Service unavailable", "retryAfterSeconds":30}}。

更准确的说,以下API返回的文件-位置的普通文件下载存在问题。https:/docs.microsoft.comen-usonedrivedeveloperrest-apiapidriveitem_get_content?view=odsp-graph-online。

似乎服务器将错误作为内容返回,而不是通过返回HTTP错误。这与 "数据完整性 "有关,所以我认为你应该总是返回HTTP错误。

microsoft-graph onedrive
1个回答
0
投票

原来C# HttpClient在超时的时候,会以AggregateException的方式抛出TaskCanceledException。

所以这不是API本身的问题,而是在处理HttpClient时需要格外注意。

HttpClient需要修改,除了抛出TaskCanceledException之外,还需要抛出HttpRequestException或者其他HTTP相关的异常。

© www.soinside.com 2019 - 2024. All rights reserved.