HTTP Response Как отправить файл HTML - PullRequest
1 голос
/ 25 января 2012

Я пишу веб-сервер, который возвращает статические HTML-страницы. В ответ на запрос GET /path/to/file/index.html HTTP / 1.0 я должен вернуть index.html. Я пишу это на Java, поэтому я в основном возвращаю страницу через socket.outputstream. Тем не менее, я не знаю, как вернуть HTML-файл через outputtream. Должен ли я открыть входной файл, прочитать его построчно, а затем распечатать его в socket.outputstream? Или есть быстрый способ отправки HTML-файла в виде ответа HTTP? Спасибо!

1 Ответ

2 голосов
/ 25 января 2012

Если вам нужно использовать потоки, тогда да, вам нужно скопировать данные самостоятельно. Вы можете найти пример кода здесь и здесь .

Однако вы можете использовать SocketChannel.open() из java.nio , чтобы открыть сокет, FileChannel.open(), чтобы открыть файл, а затем FileChannel.transferTo() метод для передачи всех данных файла в сокет.

...