Я хочу закрыть HTTP-соединение после отправки ответа, как мы делали в HTTP1.0.
Я создаю приложение отдыха, используя платформу весенней загрузки.
Теперь мы можем получить ссылку на текущее соединение, чтобы закрыть его, как показано в коде ниже:
public static void sendErrorResponse(HttpServletResponse httpResponse, ResponseMessageEnum responseEnum,
HttpStatus httpStatus) throws IOException {
Response errorResponse = new esponse(responseEnum, httpStatus);
String responseToSend = restResponseBytes(errorResponse);
httpResponse.setHeader("Content-Type", "application/json");
//httpResponse.setHeader("Connection", "close");
httpResponse.setStatus(httpStatus.value());
httpResponse.getOutputStream().write(responseToSend.getBytes());
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
HttpConnection httCon = HttpConnection.getCurrentConnection();
httCon.close();
}
В случае любой ошибки мы хотим закрыть соединение после отправки ответа.
Но это не работает. Похоже, мы просто устанавливаем ответ и не отправляем его. Таким образом, соединение закрывается перед отправкой ответа.
Теперь я не могу понять, как можно изящно закрыть соединение после отправки ответа.
Любая помощь будет принята.