我使用JsonServiceClient
调用ThirdParty API。
var client = new JsonServiceClient(ServiceURL);
var response = client.Get<Output>("Search?id=" + id);
输出是来自第三方API的类表示响应。我能够正确输出。但我想捕获此API响应的StatusCode。我怎么能这样做?
注意我已尝试过WebHttpResponse对象而不是Output(响应类)。但我希望statuseCode应该是Output类的属性而不是参数
WebHttpResponse
。有没有办法实现这个目标?
答案 0 :(得分:5)
您需要使用响应过滤器,例如:
var client = new JsonServiceClient(ServiceURL) {
ResponseFilter = res => res.StatusCode.ToString().Print()
};
但ServiceStack服务客户端仅用于使用ServiceStack服务,用于使用第三方API,我建议使用HTTP Utils代替,例如:
var response = ServiceURL.CombineWith("Search").AddQueryParam("id",id)
.GetJsonFromUrl(responseFilter:res => res.StatusCode)
.FromJson<Output>();