一踩寇,獲取返回的Json格式信息
{"error":0,"msg":"ok","data":{"success":1,"gt":"3040a6d1490f60fcea6fa28cbeb53aa2","challenge":"159c9ec915016800858ab198f8cb2065","new_captcha":1}}
目的:接受上述Json字符串牍氛。
方法:
1.在VS2013工程中添加引用(引用內(nèi)容貌似來自github)如圖1
2.在代碼引用里添加剛才導(dǎo)入的引用名稱,如圖2
3.用下述命令增炭,接受通訊類返回的數(shù)據(jù)忍燥,并提取需要的信息
Jason格式展開:如圖3
JObject jo = (JObject)JsonConvert.DeserializeObject(httpResult);//獲取Json信息
try//用try catch抓取異常
{
string receiverName = jo["msg"].ToString();//獲取第一層Key"msg"中的Value值。
//獲取第二層用string receiverName = jo["data"]["gt"].ToString();
//如果有數(shù)組用string receiverName = jo["data"]["gt"][0]["XXX"].ToString();提取隙姿,[0]表示數(shù)組索引值灾前。
//使用多線程時(shí),線程調(diào)用程序界面顯示框的方法孟辑。
BeginInvoke(new EventHandler(delegate
{
this.listBox1.Items.Add(receiverName);
}));
//替換答案中的特殊符號(hào)(需要分兩次,考慮是否可以一次去除)
receiverName = receiverName.Replace("\\", "");
receiverName = receiverName.Replace("\"", "");
if (receiverName == "false")
{
//MessageBox.Show("答案獲取失敗");
}
//將答案?jìng)鞯骄€程中的局部變量中
m_result = receiverName;
}? //1.捕獲異常蔫敲,在控件中顯示
catch (Exception ex)
{
BeginInvoke(new EventHandler(delegate
{
listBox2.Items.Add(ex.ToString());
}));
}