Java 在post请求中处理HTTP 503的最佳方法
我当前正在使用post请求访问一个服务,我使用HttpsURLConnection并调用conn.getOutputStream()将有效负载写入连接Java 在post请求中处理HTTP 503的最佳方法,java,http-post,Java,Http Post,我当前正在使用post请求访问一个服务,我使用HttpsURLConnection并调用conn.getOutputStream()将有效负载写入连接 DataOutputStream os = new DataOutputStream(conn.getOutputStream()); os.writeBytes(Payload); 如果连接已返回http 503 service unavailable响应,则在尝试写入输出流时,我会收到一个java.io.IOException,如果我使用以
DataOutputStream os = new DataOutputStream(conn.getOutputStream());
os.writeBytes(Payload);
如果连接已返回http 503 service unavailable响应,则在尝试写入输出流时,我会收到一个java.io.IOException,如果我使用以下方法检查此503响应:
conn.getResponseCode()
在写入输出流之前,我会得到异常:
"java.net.ProtocolException: Cannot write output after reading input"
我只是想知道是否有更好的方式来处理这个问题
非常感谢您的帮助
谢谢。当您调用
conn.getResponseCode()
时,将发送请求并读取响应。因此,不可能再写入输出流
捕获IOException并使用conn.getResponseCode()
获取有关异常原因的更多信息:
try {
...
DataOutputStream os = new DataOutputStream(conn.getOutputStream());
os.writeBytes(Payload);
...
} catch (IOException e) {
...
conn.getResponseCode();
...
}
调用
conn.getResponseCode()
时,将发送请求并读取响应。因此,不可能再写入输出流
捕获IOException并使用conn.getResponseCode()
获取有关异常原因的更多信息:
try {
...
DataOutputStream os = new DataOutputStream(conn.getOutputStream());
os.writeBytes(Payload);
...
} catch (IOException e) {
...
conn.getResponseCode();
...
}
如何通过调用conn.getResponseCode()“…在写入输出流之前检查503响应,然后获取异常…”。如何通过调用conn.getResponseCode()“…在写入输出流之前检查503响应,然后获取异常…”。感谢您的响应-注意,然后,我还必须将conn.getResponseCode()封装在自己处理的try-catch语句中。没有什么太棘手的事,但觉得值得一提。再次感谢。感谢您的回复-一张便条,然后我还要将conn.getResponseCode()包装在我处理的try-catch语句中。没有什么太棘手的事,但觉得值得一提。再次感谢。