簡體   English   中英

將JSON數據發布到asp.net應用程序

[英]Post JSON data to an asp.net application

我將骨干MVC框架用於客戶端應用程序。 它將JSON數據發布到asp.net應用程序,而不是ASP MVC應用程序。 如何接收我的JSON數據? JSON字符串是否位於HttpRequest對象中? .NET是否解碼JSON字符串? 我希望能夠在C#中提供一個對象或模型,並在反序列化JSON字符串時使用該對象,但是在HTTP Post操作期間可以在哪里訪問json字符串?

JSON.net運行良好。

Stream s = Request.InputStream; 
StreamReader sr = new StreamReader(s); 
Newtonsoft.Json.Linq.JObject jObj = Newtonsoft.Json.Linq.JObject.Parse(sr.ReadLine()); 
string name = (string)jObj["name"];

使用Fiddler,請求是什么樣的? 我可以想象它將發送附加到特定鍵字段的JSON。 如果沒有鍵字段,那么您應該只能夠將Request.InputStream直接讀取為字符串,然后對此進行反序列化。

要回答您的問題:

如何接收我的JSON數據? 至少,它將在您的Request.Form變量集中(即,如果您將表單發布到ASP.NET頁面)。 這是一個名稱/值集合,因此您應該可以從那里訪問它。

JSON字符串是否位於HttpRequest對象中? 是的-它應該是Request.Form一部分。

.NET是否解碼JSON字符串? 只要你告訴它。 在WCF服務中,您可以指定WebMessageFormat是什么(XML或JSON)。 在MVC中,您可以相應地處理JSON數據。 您需要使用自定義處理程序來處理此問題,也可以自己對其進行解碼。

希望這會有所幫助。 如果您有特定情況,請提供一些示例代碼或提供更多詳細信息,我將更新答案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM