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();