2017-09-06 53 views
1

私は.NET Standardクラスライブラリで作業しており、新しいDestiny 2 Apiのライブラリを作成しています。私は自分の情報を取得するためのユーザーの検索である1つの方法を使用しています。私は別のエンドポイントへの要求を行うときしかし、私はこのエラーを取得する:C#.Net標準のHttpClientストリームにコンテンツをコピー中にエラーが発生しました

System.AggregateException: One or more errors occurred. ---> System.Net.Http.HttpRequestException: Error while copying content to a stream. ---> System.IO.IOException: The read operation failed, see inner exception. ---> System.Net.Http.WinHttpException: The operation has been canceled

何かが私のコードで間違ってなければなりませんので、私は郵便配達や他のAPIテストツールを使用して、うまくこの要求を送信することができます。何か注目すべき点は、他のApiツールを使用すると、私は数回リダイレクトされることがわかります。また、Fiddlerを使用しているときに、実際にJsonを返す要求は1つもないことがわかります。他のページへのリダイレクトのように見え、Postmanは3回のリダイレクトを示し、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を持つ静的クラスです。静的なHttpClientは、すべての要求でApiに認証を維持するために使用されます。

答えて

0

私はBungie Apiサーバーで実際に何かが内部的に間違っていると思われますが、私のコードに関する複数のことを変更しなければなりませんでした。まず、BaseUriにwww.がありませんでした。第2に、​​には?queryStringが追加される前に/がありませんでした。

関連する問題