ОБНОВЛЕНИЕ : Спасибо за помощь. Я только что протестировал программу, подключающуюся к нему напрямую из браузера, а не через XMLHttpRequest. Переход прямо из браузера работает без нареканий.
Однако это соединение должно обрабатываться через XMLHTTPRequest. Согласно FireBug, он получает полный ответ (в данном случае 31 байт). Он закрывает соединение, устанавливает для readyState значение 4. Но responseText полностью пуст.
Я создаю приложение на C ++, которое принимает соединения и отвечает, как если бы это был HTTP-сервер. Моя цель - создать сервер чата в реальном времени, открыв подключения к этому приложению C ++ и ответив «страницей», которая продолжает загружаться при отправке новых сообщений. В настоящее время я отправляю следующее:
HTTP / 1.1 200 OK \ r \ n
Кодирование передачи: chunked \ r \ n
Тип содержимого: текст / обычный \ r \ n
\ Г \ п
До этого момента все работало. Используя FireBug, я вижу, что он правильно получает и интерпретирует заголовки. Однако я не могу понять, как переслать текст ответа. Я знаю, что в простом тексте это будет выглядеть следующим образом:
5
Hello
8 * * тысяча двадцать-один
До свидания
Но каждая итерация, которую я пробовал (с \ r \ n, без \ r \ n, считая \ r \ n как 2 дополнительных байта), до сих пор не читается браузером как текст ответа. Может кто-нибудь помочь с созданием правильной строки для отправки в качестве текста ответа?