如何处理 Http 消息中间的服务器错误?
假设我已经发送了消息的标头并且正在流式传输消息的正文,当我遇到意外错误时该怎么办。
我还假设此错误是在生成内容时引起的,而不是连接错误。
(大大)简化代码:
// I can define any transfer encoding or header fields i need to.
send(header); // Sends the header to the Http client.
// Using an iterable instead of stream for code simplicity's sake.
Iterable<String> stream = getBodyStream();
Iterator<String> iterator = stream.iterator();
while (iterator.hasNext()) {
String string;
try {
string = iterator.next();
catch (Throwable error) { // Oops! an error generating the content.
// What do i do here? (In regards to the Http protocol)
}
send(string);
}
有没有办法告诉客户端服务器失败了,应该重试还是放弃连接,还是我很爽?
代码大大简化了,但我只询问协议而不是确切的代码。
谢谢你