如何发送和接收Json?

时间:2018-04-25 15:50:59

标签: asp.net json post asp.net-web-api

我有一个客户端(在xamarin.android上),还有一个服务器(asp.net web表单)。我想将json POST请求从客户端传递到服务器,以处理数据库中的数据。我有点像发送一个json(虽然不确定),但我不知道如何接受它。这是我的发送代码:

    var user = new UserJson
    { 
Name = "Vladimir", 
Age = 21 
}; 
var jsonData = JsonConvert.SerializeObject(user); 

JsonWiew.Text = jsonData; 

var request = (HttpWebRequest)WebRequest.Create("my web server (here the home page address)"); 
var data = Encoding.ASCII.GetBytes(jsonData); 

request.Method = "POST"; 
request.ContentType = "application/json"; 
request.ContentLength = data.Length; 

using (var stream = request.GetRequestStream()) 
{ 
stream.Write(data, 0, data.Length); 
} 

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

var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();

1 个答案:

答案 0 :(得分:0)

要发送数据,您可以使用httpclient类并向您的网络服务发送发布/获取请求。

要获取数据,请使用httpclient类并从Web服务请求数据,并确保您的Web服务以json格式发送数据。

因此,您可以将Web服务响应的结果存储在字符串s中。

在项目中包含newtonsoft.json.linq包以使用json。 然后创建JObject类的对象并解析您的响应。

Using newtonsoft.json.linq;
String s= //your response from web service in json format//
 JObject obj = JObject.Parse(s);
 var value= obj["key"].ToString();

希望得到这个帮助。