C# 如何使用http Web请求向API发送数据?
我已经准备好了那场比赛,但从那以后我不确定该做什么,任何帮助都是好的 这是您的案例的全部解决方案,如果对您有意义,请向上投票。别忘了 试试这个:C# 如何使用http Web请求向API发送数据?,c#,android,api,xamarin,xamarin.android,C#,Android,Api,Xamarin,Xamarin.android,我已经准备好了那场比赛,但从那以后我不确定该做什么,任何帮助都是好的 这是您的案例的全部解决方案,如果对您有意义,请向上投票。别忘了 试试这个: var update = new update(); update.name = "Test Name"; //Serialize string json = JsonConvert.SerializeObject(update); WebRequest request = WebRequest.Create("api.example.com/p
var update = new update();
update.name = "Test Name";
//Serialize
string json = JsonConvert.SerializeObject(update);
WebRequest request = WebRequest.Create("api.example.com/profiles/1");
request.ContentType = "text/json";
request.Method = "PATCH";
我将使用这样的HttpURLConnection发送name=testname
var update = new update();
update.name = "Test Name";
var httpWebRequest = HttpWebRequest.Create ("api.example.com/profiles/1") as HttpWebRequest;
httpWebRequest.Method = "PATCH";
httpWebRequest.ContentType = "text/json";
httpWebRequest.Timeout = 5000;
using (var streamWriter = new StreamWriter (httpWebRequest.GetRequestStream ())) {
streamWriter.Write (JsonConvert.SerializeObject(update));
}
using (WebResponse response = httpWebRequest.GetResponse ()) {
streamReader = new StreamReader (response.GetResponseStream ());
var objectResponse = JsonConvert.DeserializeObject<your_object> (streamReader.ReadToEnd ());
}
我会改用HttpClient。这里可以找到一个例子:
String urlParameters = "name="+URLEncoder.encode("test name", "UTF-8");
URL obj = new URL("api.example.com/profiles/1");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
// add request header
con.setRequestMethod("POST");
con.setRequestProperty("Accept-Language", "en-US,en;q=0.5");
// Send post request
con.setDoOutput(true);
DataOutputStream wr = new DataOutputStream(con.getOutputStream());
wr.writeBytes(urlParameters);
wr.flush();
wr.close();
int responseCode = con.getResponseCode();