現在Bot FrameworkでBotの開発を行っております。
下記メソッドでMicrosoft Graphから情報を取得した際に
HttpResponseMessage型のレスポンスを
byte配列→文字列として変換して表示させていますが
日本語の部分が、unicodeの文字コードとして表示されてしまいます。
C#
1 private async Task<string> Gdis(IDialogContext context,string token) 2 { 3 using (var mclient = new HttpClient()) 4 { 5 var url = "https://graph.microsoft.com/v1.0/me/"; 6 mclient.DefaultRequestHeaders.TryAddWithoutValidation("Content-Type", "application/json; charset=UTF-8"); 7 mclient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); 8 HttpResponseMessage res = await mclient.GetAsync(url); 9 byte[] name = await res.Content.ReadAsByteArrayAsync(); 10 string text = System.Text.Encoding.UTF8.GetString(name); 11 return text; 12 } 13 }
これで返された文字列を表示すると、文字列の一部ですが以下の様な形になってしまいます
“surname”:"\u6817\u539f",
これは、コードが正しくないために起きている問題でしょうか
それとも、元々APIからこの形で返ってきているためにおきているもんだいなのでしょうか
また、コードが正しくない場合
どのようにすれば、日本語の部分が正しく表示できますでしょうか
お分かりの方がいらっしゃいましたら
よろしくお願いいたします。

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。