2017-09-28 3 views
0

私は現在、HttpWebRequestからの応答を受け取り、MessageBoxを使用して表示しようとしています。私はフィドラーショーとして応答を受け取りますが、それはMessageBoxのシンボルとして表示されます。c# - HttpWebResponseの出力は、メッセージボックスのシンボルとして表示されます

私の問題:私はMessageBox.Show機能を使用して応答を表示しようとしているが、応答がシンボルとして示し

。これは、応答がjsonオブジェクトであるために発生したと考えられます。 Screenshot link.

私が試してみました何:

を私はNewtonsoft.Json Nugetパケットをインストールし、次のようにそれを使用して試してみた:

var json = JsonConvert.DeserializeObject(new StreamReader(response.GetResponseStream()).ReadToEnd()); 
MessageBox.Show(json.ToString()); 
応答結果とシオマネキ要求を含む

スクリーンショット

応答を受け取るC#コード:

try 
{ 
    string post = "{\"input01\":{\"Input\":\"GmailAddress\",\"GmailAddress\":\"" + words[0] + "\",\"FirstName\":\"\",\"LastName\":\"\"},\"Locale\":\"de\"}"; 

    HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://accounts.google.com/InputValidator?resource=SignUp&service=mail"); 
    request.Method = "POST"; 
    request.Accept = "*/*"; 
    request.Headers.Add("Accept-Encoding", "gzip, deflate, br"); 
    request.Headers.Add("Accept-Language", "en-US,en;q=0.8"); 
    request.Host = "accounts.google.com"; 
    request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36"; 
    request.ContentType = "application/json"; 
    request.KeepAlive = true; 

    byte[] postBytes = Encoding.ASCII.GetBytes(post); 
    request.ContentLength = postBytes.Length; 
    Stream requestStream = request.GetRequestStream(); 

    requestStream.Write(postBytes, 0, postBytes.Length); 
    requestStream.Close(); 

    HttpWebResponse response = (HttpWebResponse)request.GetResponse(); 

    var html = new StreamReader(response.GetResponseStream()).ReadToEnd(); 
    MessageBox.Show(html); 
} 
catch(Exception ex) 
{ 
    MessageBox.Show(ex.Message); 
} 

答えて

0

JSONオブジェクトの文字列を取得しようとしています。このシナリオには別の文字列を格納する必要があります。

string resp = new StreamReader(response.GetResponseStream()).ReadToEnd(); 
var json = JsonConvert.DeserializeObject(resp); 
MessageBox.Show(resp); 
+0

これにより、例外が発生します。値の解析中に予期しない予期しない文字が発生しました:。パス "、行0、位置0。 – stackjjs

+0

@stackjjs、これを試すことができます:' JsonConvert.DeserializeObject (resp); ' – praty

関連する問題