■85308 / inTopicNo.1) |
TwitterAPIで取得したjsonのデコードについて |
□投稿者/ てん (1回)-(2017/10/06(Fri) 03:43:43)
|
分類:[C#]
現在TwitterAPIを叩いてタイムラインの取得を使用としています.
以下が質問に関する主要部分のコードです
var reqUrl = "https://api.twitter.com/1.1/statuses/user_timeline.json";
var client = new HttpClient();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/x-www-form-urlencoded"));
client.DefaultRequestHeaders.Add("Authorization", authHeader);
var response = await client.GetAsync(reqUrl);
var res = await response.Content.ReadAsStringAsync();
if(response.IsSuccessStatusCode) {
Debug.WriteLine(res);
}
else {
Debug.WriteLine("むねん");
}
レスポンス自体は帰ってきており,IsSuccessStatusCodeがTrueになっているのですが,
レスポンスのボディ部分が,文字化けしており,どのように対処すれば良いのか分かりません.
Debug.WriteLineの部分を,Stringの代わりにStreamで取得したボディを使って,
using(var sr = new StreamReader(res)) {
Debug.WriteLine(sr.ReadToEnd());
}
とも書き換えてみたのですが,変わらない状態となっております.
ウォッチ機能を用いて中身を覗いてみると,一部エスケープされているようですが,エスケープと文字化けした部分が混在している状態となっており,それが原因でRegex.Unescape()も文字化けしている箇所でコケてしまう状態となっております.
どのように対処をする物なのでしょうか.
当方,webAPIを取り扱うのは初めてのため重大な勘違いをしている可能性もありますが,
どなたかお教え頂けますと,助かります.
よろしくお願いいたします.
|
|