Hitbox APIからデータを取得しようとすると、私は奇妙な結果に遭遇します。 1つのAPIのコマンドのために毎回発生します。結果は多かれ少なかれそうです(これは私が得た最後の結果です)。Strange HttpClientの結果
\ u001f \ b \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ u0003콋w 8 s Mmu 〜 s N t& N g6 C Ͷ$ z%9igf [ f \ \ b b u u uu u u u 012 012 012 012 012 012 012 012 012 012 012 012 012 012 012 012 012 012 012 012 012 012^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^Ƿ& \u0015ƛXo\ u0014 [6ワット\ u0011onVP \ u0005e \ u000e \ u05cal /⇝%UUS = k
w��z\u0003�a����SR,���s�1����ůdž��2~.6\u0006T>��fR��l�(���\u0017�GHoV�&/�m#�'\u0013�C�N/��E|Q�\u0012���3+�6\u0003z\u0012���q>�{�_��eW�7\u0016�rsIw\u0012\u0018&\u0017��V�\u000f�Ŀ\u001f������e�\u0002A��Zg��U\u0006��\\g\u0015�VP��u.E8Hj�
LA↓/͋ | ; \ \ u u u 3 3 3 3 3 3 3 3 3 3 3 3 3] v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v v XA {\ u0004Klo \ u0016%T \ u0006 < {O = \ u0017 \ u0017 \ u0015%$ GOϡ\ "\ u007f u001f {\ ^̹hHq8\ u00016 \ u0015y {��S��4+�pb-\\eI�bB]^
JՊX \ u0004 \u0001ºQD\ u001eK \ U0001; \ u0002 + Y ! \a \u001a (()> Lの\ u0013の\のV \ R- \ NU?߭_& L> \ R0(N4))/ UC3 \ < U \ u0013 \ u001f \ u0002 \ n6 \ n "" \ n "" \ n "" \ n "" \ n "" \ n "" \ u001cc oG _\u0003b 4 `
それはずっと長いですが、すべてをコピーするのは無意味です(約30000文字)。私は、JSONの結果を取得するために使用
私のコードは次のとおりです。
string result;
using (var client = new HttpClient())
{
client.BaseAddress = new Uri(hitboxApiLink);
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
HttpResponseMessage response = client.GetAsync(requestString).Result;
result = response.Content.ReadAsStringAsync().Result;
}
return result;
私は前にこれを使用:
HttpWebRequest request = (HttpWebRequest) WebRequest.Create(Path.Combine(hitboxApiLink, requestString));
request.KeepAlive = false;
request.ContentType = "application/json; charset=utf-8";
WebResponse response = request.GetResponse();
using(StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8))
{
result = reader.ReadToEnd();
}
そして、それは同じことを返します。しかし、Google ChromeやInternet Explorerでデータを取得しようとすると、通常の結果が返されます。 APIは次のとおりです。http://developers.hitbox.tv/
私があるからデータを取得しようとするリンク:https://api.hitbox.tv/media/live/list
少し話題ですが、使用しないでください。代わりに、待っているキーボードを使用してください。 コンテキストを十分に注意していないと、結果をアンパックするためにawaitを使用することができない場合、.Resultを使用するとデッドロックが発生する可能性があります。 [非同期コードでブロックしない](http://blog.stephencleary.com/2012/07/dont-block-on-async-code.html) –
'Path.Combine'は、ファイルシステムのパスです。 URLを使用することを悪用すると、おそらく問題が発生します。 – spender
@ KerimEmurlaよろしくお願いいたします。 –