如何在请求URL(Java11)中添加参数?
How to add parameter in request URL( Java 11)?
我绝对是 java 的初学者。尝试使用内置 java httpclient.
发送一些 http 请求
如何将请求参数添加到这种格式的 URI 中:
parameter = hi
url = "https://www.url.com?parameter=hi"
我用的代码,只能设置headers不能设置请求参数
var client = HttpClient.newHttpClient();
var request = HttpRequest.newBuilder(URI.create(url))
.GET()
.build();
var reponse = client.send(request, HttpResponse.BodyHandlers.ofString());
return reponse.body();
非常感谢!
使用本机 Java 11,必须像您一样完成。您需要在 url 参数中添加参数。或者您需要创建自己的构建器,允许您附加参数。
但是,如果您使用库,您请求的行为是可能的。一种方法是使用 Apache URIBuilder
var client = HttpClient.newHttpClient();
URI uri = new URIBuilder(httpGet.getURI())
.addParameter("parameter", "hi")
.build();
var request = HttpRequest.newBuilder(uri)
.GET()
.build();
var reponse = client.send(request, HttpResponse.BodyHandlers.ofString());
return reponse.body();
你没有添加参数的方法,但是你可以使用String.format()
来很好地格式化URL。
final static String URL_FORMAT = "http://url.com?%s=%s";
final String request = String.format(URL_FORMAT, "paramater", "hi");
我绝对是 java 的初学者。尝试使用内置 java httpclient.
发送一些 http 请求如何将请求参数添加到这种格式的 URI 中:
parameter = hi
url = "https://www.url.com?parameter=hi"
我用的代码,只能设置headers不能设置请求参数
var client = HttpClient.newHttpClient();
var request = HttpRequest.newBuilder(URI.create(url))
.GET()
.build();
var reponse = client.send(request, HttpResponse.BodyHandlers.ofString());
return reponse.body();
非常感谢!
使用本机 Java 11,必须像您一样完成。您需要在 url 参数中添加参数。或者您需要创建自己的构建器,允许您附加参数。
但是,如果您使用库,您请求的行为是可能的。一种方法是使用 Apache URIBuilder
var client = HttpClient.newHttpClient();
URI uri = new URIBuilder(httpGet.getURI())
.addParameter("parameter", "hi")
.build();
var request = HttpRequest.newBuilder(uri)
.GET()
.build();
var reponse = client.send(request, HttpResponse.BodyHandlers.ofString());
return reponse.body();
你没有添加参数的方法,但是你可以使用String.format()
来很好地格式化URL。
final static String URL_FORMAT = "http://url.com?%s=%s";
final String request = String.format(URL_FORMAT, "paramater", "hi");