Ala*_*ain 5 c# rest stream restsharp
我必须能够使用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);
Run Code Online (Sandbox Code Playgroud)
我的问题是,在 RestSharp完成请求我的ResponseWriter处理整个流之前,'response'对象(包括状态,状态代码,标题等)才可用.
这似乎违反直觉,因为用户当然可能希望根据响应状态更改响应流的处理方式.
在开始处理响应主体的流之前,如何获取此状态信息?
我想这已经在这里报道过了。
看起来他们为此发布了更新,而执行此操作的方法是使用AdvancedResponseWriter。
var client = new RestClient
var request = new RestRequest();
IRestResponse response;
request.AdvancedResponseWriter = (stream, response) => {
// Should be able to access response which is an IHttpResponse
};
response = client.Execute(request);
Run Code Online (Sandbox Code Playgroud)
文档。
| 归档时间: |
|
| 查看次数: |
2201 次 |
| 最近记录: |