我有一个RestSharp API客户端,该客户端具有许多重复的代码来设置一些标头和处理异常。我想将其集中到某个地方的单个函数中,但是我无法从文档中弄清楚如何实现。 Recommended Usage示例看起来确实很有希望,但是Execute方法似乎并未自动被调用。如果我使用推荐的client.Get<User>()
语法(在这里获取用户),它似乎没有使用/调用Execute方法。
这是我的API调用示例:
public User GetUserByUserId(Guid userID)
{
var request = new RestRequest("api/Users");
request.AddHeader("accept", "application/vnd.cardivation.com.v2+json");
request.Parameters.Add(new Parameter("userID", userID, ParameterType.QueryString));
var response = client.Get<User>(request);
if (response.ResponseStatus == ResponseStatus.Error)
{
throw new ApplicationException("Could not fetch user from API", response.ErrorException);
}
return response.Data;
}
“ AddHeader”调用和检查响应状态是我要集中的位。