【发布时间】:2021-01-23 02:00:34
【问题描述】:
我必须能够使用 RestSharp 从我们的 Rest API 流式传输大文件。这样做的规范方法是在请求上设置“ResponseWriter”属性:
var client = new RestClient
var request = new RestRequest();
IRestResponse response;
request.ResponseWriter = connectStream => {
if(response.StatusCode == ResponseStatus.OK)
{
CloudStorage.UploadFromStream(connectStream);
}
else
{
LoggerService.LogErrorFromStream(connectStream);
}
};
response = client.Execute(request);
我的问题是“响应”对象(包括状态、状态代码、标题等)在 RestSharp 完成要求我的 ResponseWriter 处理整个流之前不可用。
这似乎违反直觉,因为当然用户可能希望根据响应状态更改响应流的处理方式。
如何在开始处理响应正文的流之前获取此状态信息?
【问题讨论】: