【发布时间】:2018-02-15 06:31:14
【问题描述】:
我正在开发一个 .Net Standard 类库,并正在为新的 Destiny 2 Api 创建一个库。我有一种工作方法是搜索用户以获取他们的信息。但是,当我向不同的端点发出请求时,我会收到此错误:
System.AggregateException:发生一个或多个错误。 ---> System.Net.Http.HttpRequestException:将内容复制到 溪流。 ---> System.IO.IOException: 读操作失败,见 内部异常。 ---> System.Net.Http.WinHttpException: 操作 已取消
我可以使用 PostMan 或任何其他 Api 测试工具很好地发送这个请求,所以我的代码一定有问题。值得注意的是,在使用其他 Api 工具时,我注意到我被重定向了几次。此外,当使用 Fiddler 时,我可以看到实际上没有任何请求返回 Json,它们看起来都像是重定向到另一个页面,Postman 显示 3 重定向 fiddler 显示 2,然后我的代码失败。
我的代码很小,所以我想不出有什么可能破坏它:
public string GetProfile(BungieMembershipType membershipType, string destinyMembershipId)
{
var properUrl = String.Format(GetProfileUrl, (int)membershipType, destinyMembershipId);
var rawData = RootRequest.Web.GetStringAsync(properUrl).Result;
return rawData;
}
对我来说唯一奇怪的是我在单元测试中测试我的代码,在调试期间我无法评估RootRequest。 RootRequest 是一个静态类,上面有一个静态 HttpClient,用于发出所有请求以保持对 Api 的身份验证简单。
【问题讨论】:
标签: c# dotnet-httpclient