1. 程式人生 > >API返回 json資料的解析和取值

API返回 json資料的解析和取值

有的API返回的資料比較少,適合用json來傳,後臺與前臺的資料交換也經常用 json來傳。我們簡單看個json的文件:
這裡寫圖片描述
現在我們試著提取這個json資料包裡的“nickname”和“headimgurl”的內容。

程式碼如下:

      public UserInfo ReUserInfo(string OpenID)
        {
            UserInfo userinfo = new UserInfo();
            string url = "https://api.weixin.qq.com/cgi-bin/user/info?access_token="
+get_acctoken()+"&openid="+OpenID+"&lang=zh_CN"; HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);//請求資料 //use GET method to get url's html req.Method = "GET"; //use request to get response HttpWebResponse resp = (HttpWebResponse)req.GetResponse();//獲取返回結果
//otherwise will return messy code // Encoding htmlEncoding = Encoding.GetEncoding(htmlCharset); StreamReader sr = new StreamReader(resp.GetResponseStream(), Encoding.UTF8);//以UTF8標準讀取流 //read out the returned html string respHtml = sr.ReadToEnd();//將從頭到尾讀到的資料存成字串
//以上是資料的讀取,將json資料包轉換成字串的過程,下面解析字串 JObject obj = (JObject)JsonConvert.DeserializeObject(respHtml);//引用using Newtonsoft.Json.Linq;將json字串轉換成一個json物件 userinfo.nickname = obj["nickname"].ToString();//要訪問json資料包的哪個值直接訪問json物件就可以了 userinfo.headimgurl = obj["headimgurl"].ToString(); return userinfo; }

跟json打交道的時候,JsonConvert很重要。