Ran*_*all 1 c# stream http-status-codes getasync
通过 抓取图像GetStreamAsync,如何确定状态?
HttpClient OpenClient = new HttpClient();
Stream firstImageStream = OpenClient.GetStreamAsync("imageUrl.jpg").Result;
Run Code Online (Sandbox Code Playgroud)
有时这会产生错误(通常为 403 或 404),我只想跳过处理这些结果。
我能找到的所有内容都说要使用StatusCode属性 or IsSuccessStatusCode,但那些似乎只适用于HttpResponseMessage来自 GetAsync 的 ,它没有给我Stream处理图像所需的条件。
流没有响应状态代码。您需要先获取 HttpResponseMessage,检查状态代码,然后在流中读取。
HttpClient OpenClient = new HttpClient();
var response = await OpenClient.GetAsync("imageUrl.jpg");
if (response.StatusCode == System.Net.HttpStatusCode.OK)
{
Stream stream = await response.Content.ReadAsStreamAsync();
}
Run Code Online (Sandbox Code Playgroud)