繁体   English   中英

如何使用 http Web Request 向 API 发送数据?

[英]How to use http Web Request to Send data to API?

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";

我已经完成了那场比赛,但从那里我不知道该怎么做任何帮助都很棒。

这是您的案例的完整解决方案:

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

我会使用这样的 HttpURLConnection 来发送 name="test name"

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM