Node-RED:Рецепты/Как вернуть HTTP-ответ в виде двоичных данных: различия между версиями
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Myagkij (обсуждение | вклад) Нет описания правки |
Нет описания правки |
||
Строка 17: | Строка 17: | ||
[[File:nodered_recipe_get-binary-response.png|center]] | [[File:nodered_recipe_get-binary-response.png|center]] | ||
<syntaxhighlight lang="javascript | <syntaxhighlight lang="javascript"> | ||
[{"id":"871ee927.0d69c8","type":"inject","z":"c9a81b70.8abed8","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"x":240,"y":660,"wires":[["8ea4e52a.03d678"]]},{"id":"8ea4e52a.03d678","type":"http request","z":"c9a81b70.8abed8","name":"binary http request","method":"GET","ret":"bin","url":"http://localhost:1880/binary","tls":"","x":410,"y":660,"wires":[["70309d0c.4dc504"]]},{"id":"70309d0c.4dc504","type":"debug","z":"c9a81b70.8abed8","name":"","active":true,"console":"false","complete":"false","x":590,"y":660,"wires":[]}] | [{"id":"871ee927.0d69c8","type":"inject","z":"c9a81b70.8abed8","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"x":240,"y":660,"wires":[["8ea4e52a.03d678"]]},{"id":"8ea4e52a.03d678","type":"http request","z":"c9a81b70.8abed8","name":"binary http request","method":"GET","ret":"bin","url":"http://localhost:1880/binary","tls":"","x":410,"y":660,"wires":[["70309d0c.4dc504"]]},{"id":"70309d0c.4dc504","type":"debug","z":"c9a81b70.8abed8","name":"","active":true,"console":"false","complete":"false","x":590,"y":660,"wires":[]}] | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 23: | Строка 23: | ||
Пример выше – это отредактированный поток из [[Node-RED:Рецепты/Как_задать_URL_запроса|примера «Как задать URL запроса»]]. В нем в ноде '''«HTTP request»''' в настройке '''«Return»''' стоит '''«a binary buffer»''', а нода '''«Debug»''' будет показывать информацию из '''«msg.payload»''' в виде буфера двоичных данных. Примерно так: | Пример выше – это отредактированный поток из [[Node-RED:Рецепты/Как_задать_URL_запроса|примера «Как задать URL запроса»]]. В нем в ноде '''«HTTP request»''' в настройке '''«Return»''' стоит '''«a binary buffer»''', а нода '''«Debug»''' будет показывать информацию из '''«msg.payload»''' в виде буфера двоичных данных. Примерно так: | ||
<syntaxhighlight lang="javascript | <syntaxhighlight lang="javascript"> | ||
[ 80, 75, 3, 4, 20, 0, 6, 0, 8, 0 … ] | [ 80, 75, 3, 4, 20, 0, 6, 0, 8, 0 … ] | ||
</syntaxhighlight> | </syntaxhighlight> |
Текущая версия от 18:24, 14 мая 2023
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
Как вернуть HTTP-ответ в виде двоичных данных[1]
Проблема
Вам нужно вернуть ответ на HTTP-запрос в виде буфера двоичных данных.
Решение
По умолчанию нода «HTTP request» сохраняет тело ответа в свойство «msg.payload» в виде строки. Задайте в опции «Return» этой ноды настройку «a binary buffer». В результате HTTP-ответ будет сохраняться в свойство «msg.payload» в виде буфера двоичных данных.
Пример
[{"id":"871ee927.0d69c8","type":"inject","z":"c9a81b70.8abed8","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"x":240,"y":660,"wires":[["8ea4e52a.03d678"]]},{"id":"8ea4e52a.03d678","type":"http request","z":"c9a81b70.8abed8","name":"binary http request","method":"GET","ret":"bin","url":"http://localhost:1880/binary","tls":"","x":410,"y":660,"wires":[["70309d0c.4dc504"]]},{"id":"70309d0c.4dc504","type":"debug","z":"c9a81b70.8abed8","name":"","active":true,"console":"false","complete":"false","x":590,"y":660,"wires":[]}]
Пример выше – это отредактированный поток из примера «Как задать URL запроса». В нем в ноде «HTTP request» в настройке «Return» стоит «a binary buffer», а нода «Debug» будет показывать информацию из «msg.payload» в виде буфера двоичных данных. Примерно так:
[ 80, 75, 3, 4, 20, 0, 6, 0, 8, 0 … ]
См.также
Внешние ссылки