У меня есть сервер JAVA, получающий простые запросы от браузера. Эти запросы являются просто запросами GET, содержащими контент HTML, который будет преобразован в файл PDF на сервере. После создания файла PDF сервер должен отправить его обратно клиенту. Запрос клиента является запросом AJAX.
У меня проблема при отправке файла клиенту. На самом деле файл правильно создается на стороне сервера, но когда я пытаюсь отправить его клиенту, возникает ошибка сломанного канала. Похоже, он не делает это с очень маленькими файлами, но каждый раз с файлами около 1 МБ.
Я знаю, что ошибка разорванного канала возникает из-за того, что клиент закрывает соединение, в то время как сервер всегда пишет в сокет. Но я не понимаю, почему клиент закрывает соединение. Я не делаю никаких действий на стороне клиента, я просто жду ответа, но соединение всегда закрывается в один и тот же момент.
Мой сервер связывается с клиентом через SSLSocket, и я отправляю правильную длину содержимого в заголовках моего ответа.
Кто-нибудь имеет представление о том, почему клиент внезапно закрывает соединение? При необходимости я могу предоставить больше информации, а также некоторые части моего серверного кода.
AJAX-запрос на стороне клиента:
$.ajax({
url: url_server,
type: "GET",
data: param_server,
dataType: "html",
statusCode: {
404: function () {}
}
});