gpt4 book ai didi

java - 在Java中发送HTTP POST请求

转载 作者:太空宇宙 更新时间:2023-11-04 12:54:48 24 4
gpt4 key购买 nike

让我们假设这个 URL...

http://www.example.com/page.php?id=10            

(这里需要在POST请求中发送id)

我想将 id = 10 发送到服务器的 page.php,服务器以 POST 方法接受它。

如何在 Java 中执行此操作?

我尝试过这个:

URL aaa = new URL("http://www.example.com/page.php");
URLConnection ccc = aaa.openConnection();

但我还是不知道如何通过 POST 发送

最佳答案

更新答案

由于原始答案中的某些类在较新版本的 Apache HTTP Components 中已被弃用,因此我发布此更新。

顺便说一句,您可以访问完整文档以获取更多示例 here .

HttpClient httpclient = HttpClients.createDefault();
HttpPost httppost = new HttpPost("http://www.a-domain.example/foo/");

// Request parameters and other properties.
List<NameValuePair> params = new ArrayList<NameValuePair>(2);
params.add(new BasicNameValuePair("param-1", "12345"));
params.add(new BasicNameValuePair("param-2", "Hello!"));
httppost.setEntity(new UrlEncodedFormEntity(params, "UTF-8"));

//Execute and get the response.
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();

if (entity != null) {
try (InputStream instream = entity.getContent()) {
// do something useful
}
}

原始答案

我建议使用 Apache HttpClient。它更快、更容易实现。

HttpPost post = new HttpPost("http://jakarata.apache.org/");
NameValuePair[] data = {
new NameValuePair("user", "joe"),
new NameValuePair("password", "bloggs")
};
post.setRequestBody(data);
// execute method and handle any error responses.
...
InputStream in = post.getResponseBodyAsStream();
// handle response.

有关更多信息,请查看此 URL:http://hc.apache.org/

关于java - 在Java中发送HTTP POST请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35498691/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com