HTML-страница с двоичным кодом от lwip открывается только в Microsoft Edge - PullRequest
0 голосов
/ 23 октября 2019

Я разрабатываю нестандартное устройство на основе lwip и хочу отправить HTML-страницу подключенному клиенту через браузер.

Моя страница имеет следующий HTML-код:

<!DOCTYPE html>
<html>
    <head>
        <title>Pooof</title>
        <meta charset="us-ascii">
    </head>
    <body>
        <h1>TEST index page</h1>
        <p>TBD</p>
    </body>

Я упаковываю этот HTML-файл в двоичное представление в uint8_t, сохраняю его на устройстве и возвращаю в GET / request.

Я ожидаю, что моя страница будет доступна во всех браузерах. Но я вижу это только в Microsoft Edge. В Chrome и Firefox я вижу только 200 статусов ответов без отображения веб-страницы

. Если я отправляю запрос почтальоном, я получаю единственное тело, но без проанализированных заголовков. Тело имеет следующий текст:

Server: lwIP/1.3.1 (http://savannah.nongnu.org/projects/lwip)

Content-Length: 201

Connection: Close

Content-type: text/html; charset=us-ascii



<!DOCTYPE html>

<html>

    <head>

        <title>Pooof</title>

        <meta charset="us-ascii">

    </head>

    <body>

        <h1>TEST index page</h1>

        <p>TBD</p>

    </body>

</html>

Почтальон не показывает никаких заголовков.

В Chrome я вижу, что было проанализировано, единственный заголовок. Необработанный заголовок thew выглядит следующим образом:

HTTP/1.1 200 OK
Server: lwIP/1.3.1 (http://savannah.nongnu.org/projects/lwip)
Content-Length: 201
Connection: Close
Content-type: text/html; charset=us-ascii
<!DOCTYPE html>
<html>
    <head>
        <title>Pooof</title>
        <meta charset="us-ascii">
    </head>
    <body>
        <h1>TEST index page</h1>
        <p>TBD</p>
    </body>
</html>

Тело в Chrome пусто.

Я уже пытаюсь добавить больше \ r \ n \ r \ n, которые, как мне кажется, "съедает"Chrome, я пытаюсь отправить \ r \ r \ n вместо \ r \ n, о котором говорилось в разных статьях, но я ничего не вижу в Chrome.

Так что в настоящее время я вижу свою страницу только в Microsoft Edgeно я хочу видеть во всех браузерах.

...