Express: Как получить необработанный буфер http-запроса - PullRequest
0 голосов
/ 03 апреля 2020

Мое приложение работает на Express http-сервере. Мне нужно сохранить сообщение http-запроса (заголовки, тело и т. Д.) В необработанном формате, так же, как оно было отправлено клиентом на сервер. Я не могу найти Где это хранится. Любой?

1 Ответ

0 голосов
/ 03 апреля 2020

Все это нигде не хранится. Express использует модуль http в node.js, который анализирует входящий запрос и заголовки в структуре данных. Тело запроса (например, для POST или PUT) оставлено для чтения из входящего потока чтения, так что вы точно можете прочитать точное тело самостоятельно. Просто подключите прослушиватель для события data в потоке входящих запросов, и вы сможете прочитать точные байты тела прямо в объект Buffer.

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

Некоторая информация находится в этих свойствах, как задокументировано здесь :

request.rawHeaders
request.method
request.httpVersion
request.headers
request.url

Если вы сможете точно объяснить, что именно является проблемой, которую вы пытаетесь решить, у нас будет лучшее представление о том, как еще вам помочь.

...