Прежде всего, Я бы настоятельно рекомендовал использовать пакет сервера http, который обрабатывает такие вещи низкого уровня, как написание заголовков для вас! Кто-то приложил усилия для выполнения этого, проверив, что он соответствуетHTTP RFC, протестируйте его, а затем бесплатно раздайте!
Если это для задания или для изучения http, или у вас есть другие веские причины, достаточно справедливо.Но в остальном почти бессмысленно писать что-то подобное с нуля, где можно было бы вводить ошибки, которые трудно выявить.Вы можете не только вводить ошибки http, но и следить за тем, чтобы потоки выполнялись правильно, иначе вы можете столкнуться с проблемами, когда получите больше трафика.И вы сэкономите много времени, потому что кто-то другой уже разобрался со сложными вещами, поэтому вы можете сосредоточиться на том, чтобы делать то, что вы действительно хотите сделать.
Но для вашей проблемы - этоПохоже, что http-часть ответа не отформатирована совершенно правильно, потому что флаттер не распознает код ответа 200, который вы пытаетесь отправить (и, следовательно, не читает его).
Трудно сказатьбез того, чтобы вы на самом деле опубликовали, как выглядит http-ответ полностью, но я думаю, что это связано с дополнительным переводом строки.как HTTP / 1.1).
Также вы должны знать, что протокол HTTP на самом деле хочет \r\n
для перевода строки , хотя все современные серверы / клиенты должны поддерживать только '\и еще.Но всегда лучше следовать спецификации протокола.