java HttpUrlConnection POST : need to ask for a response for the POST to be committed?

标签 java http post httpurlconnection

我正在尝试使用 java HttpUrlConnection 类在服务器上发布数据。似乎如果我以某种方式读取服务器的响应,该帖子就可以正常工作,但如果我不这样做,则该信息永远不会发布。

HttpUrlConnection 文档中没有提到这种行为,而且我见过的所有 HttUrlConnection 示例都要求服务器响应。

我想知道我的代码中是否犯了错误,或者这是否是 HttpUrlConnection 的正常行为,如果是这种情况,更了解此类工作原理的人可以向我解释为什么会这样吗?

非常感谢!

这是代码,注释行是使 POST 成功或失败的代码:

URL url=new URL("myUrl");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("POST");
connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");
connection.setRequestProperty("Host", "myHost");
connection.setDoOutput(true);
os.write(staffToPost.getBytes("utf-8"));
os.flush();
os.close();
//System.out.println(connection.getResponseCode()+" "+connection.getResponseMessage());

最佳答案

URLCOnnection 类需要完整的握手才能发生 POST。这意味着,一旦打开连接,就必须读回响应才能真正发生 POST。

关于java HttpUrlConnection POST : need to ask for a response for the POST to be committed?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10594109/

相关文章:

c++ - 如何查看我发送的流 libvlc C/C++

c# - 如何正确将图片发布到 URL?

javascript - 如何在提交之前使用 JavaScript/jQuery 查看 POST 值

php外部站点登录然后转到另一个页面

java - 将信息发布到服务器并接收 XML

java - 无效算法参数异常 : the trustAnchors parameter must be non-empty

java - 如何从父类(super class)调用抽象方法(在子类中重写)?

java - 如何创建和处理来自工作线程的消息

java - 使用 java 流成对应用操作来连接两个列表

http - 告诉网络浏览器登录失败,因此它不会要求记住密码