[英]How to send data from win forms to web using Json?
我無法正確傳遞價值。 該代碼已成功執行,但空值到達了指定的頁面(“ http:// ........” )。
Product objProduct = new Product();
objProduct.id = "1";
objProduct.name = "Sana";
string json = JsonConvert.SerializeObject(objProduct);
var baseAddress = "http://..................";
var http = (HttpWebRequest)WebRequest.Create(new Uri(baseAddress));
http.Accept = "application/json";
http.ContentType = "application/json";
http.Method = "POST";
string parsedContent = json;
ASCIIEncoding encoding = new ASCIIEncoding();
Byte[] bytes = encoding.GetBytes(parsedContent);
Stream newStream = http.GetRequestStream();
newStream.Write(bytes, 0, bytes.Length);
newStream.Close();
var response = http.GetResponse();
var stream = response.GetResponseStream();
var sr = new StreamReader(stream);
var content = sr.ReadToEnd();
可以使用Microsoft.Net.Http嗎
using (var client = new HttpClient())
{
var objProduct = new Product();
objProduct.id = "1";
objProduct.name = "Sana";
string json = JsonConvert.SerializeObject(objProduct);
var content = new StringContent(json);
var result = await client.PostAsync("http://localhost/product/", content);
var responseAsString = await result.Content.ReadAsStringAsync();
}
我用來發出請求的另一個簡單解決方案是WebClient ,您的代碼可以像這樣
Product objProduct = new Product();
objProduct.id = "1";
objProduct.name = "Sana";
string json = JsonConvert.SerializeObject(objProduct);
var baseAddress = "http://..................";
var respond = "";
//Post request
using (WebClient wc = new WebClient())
{
wc.Encoding = Encoding.UTF8;
respond = wc.UploadString(baseAddress, json);
}
這里的response變量將返回API的結果
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.