用java发送带有正文的post请求
我在用java向本地服务器发送POST请求时遇到一些问题。我用Postman测试了这个本地服务器,它确实正常工作。不幸的是,当我尝试用java发送POST请求时,使用200个OK代码,一切正常,但正文中没有任何内容。这是我的代码:用java发送带有正文的post请求,java,post,Java,Post,我在用java向本地服务器发送POST请求时遇到一些问题。我用Postman测试了这个本地服务器,它确实正常工作。不幸的是,当我尝试用java发送POST请求时,使用200个OK代码,一切正常,但正文中没有任何内容。这是我的代码: public static void request1() throws MalformedURLException, ProtocolException, IOException { URL url = new URL("h
public static void request1() throws MalformedURLException, ProtocolException, IOException {
URL url = new URL("http://192.168.1.200");
HttpURLConnection httpCon = (HttpURLConnection) url.openConnection();
httpCon.setDoOutput(true);
httpCon.setRequestMethod("POST");
OutputStream os = httpCon.getOutputStream();
OutputStreamWriter osw = new OutputStreamWriter(os, "UTF-8");
osw.write("Just Some Text");
osw.flush();
osw.close();
os.close(); //don't forget to close the OutputStream
httpCon.connect();
System.out.println(httpCon.getResponseCode());
System.out.println(httpCon.getResponseMessage());
}
编辑:我看到你们中的一些人说这是一个重复,并给了我另一个应该解决的链接。遗憾的是,我尝试了该链接中的代码,但它不起作用。服务器只是说请求没有正文。来自HttpUrlConnectionGetResponseMessageJavadoc:
获取随返回的HTTP响应消息(如果有)
来自服务器的响应代码。
从以下回答中:
HTTP/1.0 200正常
未找到HTTP/1.0 404
提取字符串“确定”和“未找到”
分别地如果从结果无效的HTTP响应中看不出任何结果,则返回null
如果需要响应主体,则需要从HttpUrlConnection InputStream中提取它
您可以使用HttpUrlConnectiongetInputStream。获取需要读取的实际响应体
httpCon.getInputStream()
您可以用一行这样的字符串读取数据
String responseBody = new BufferedReader(new InputStreamReader(httpCon.getInputStream())).lines().collect(
Collectors.joining("\n"));
System.out.println(responseBody);
您的意思是看不到本地服务器响应正文?可能与