C#是一種常用的編程語(yǔ)言,能夠方便地處理JSON數(shù)據(jù)。當(dāng)需要從客戶端接收POST請(qǐng)求時(shí),有時(shí)候需要以JSON格式傳遞數(shù)據(jù)。為了解決這個(gè)問(wèn)題,可以使用C#編寫(xiě)一個(gè)如下所示的代碼來(lái)接收POST JSON數(shù)據(jù)。
using System.IO; using System.Net; using System.Web.Script.Serialization; public static string GetJsonFromPostRequest() { Stream inputStream = HttpContext.Current.Request.InputStream; inputStream.Position = 0; StreamReader reader = new StreamReader(inputStream); string json = reader.ReadToEnd(); JavaScriptSerializer serializer = new JavaScriptSerializer(); dynamic jsonObj = serializer.DeserializeObject(json); return jsonObj; }
這段代碼中,我們使用了HttpContext.Current.Request對(duì)象從POST請(qǐng)求中獲取JSON數(shù)據(jù)。獲取該對(duì)象時(shí)需要將輸入流重置到0,然后使用StreamReader對(duì)象讀取JSON數(shù)據(jù)。我們使用JavaScriptSerializer對(duì)象將JSON數(shù)據(jù)序列化為動(dòng)態(tài)類型的對(duì)象,并返回該對(duì)象。
使用C#編寫(xiě)POST請(qǐng)求是非常常見(jiàn)的操作,也十分實(shí)用。在接收J(rèn)SON數(shù)據(jù)時(shí),可以使用以上提供的C#代碼對(duì)JSON數(shù)據(jù)進(jìn)行解析和處理,讓程序更高效地工作。