Для створення потоків у Node-RED варто ознайомитись як працюють базові вузли. В цій статті Ви дізнаєтесь про них.
- debug
- function
- http in та http response
Вузол inject використовується для запуску потоку вручну, натиснувши на кнопку зліва. Також можна запускати автоматично у певний проміжок часу.
За замовчуванням вузол inject має такі властивості, як 'payload' та 'topic'. Вони приймають різні типи даних, наприклад: object, buffer, global, string, number, boolean та ін.
Подвійним кліком на вузол можна відкрити його налаштування. Запишемо рядок Hello dev у payload. Після будь-якої взаємодії з вузлом потрібно зберегти зміни натиснувши кнопку Done.
(https://community.ubos.tech/uploads/articles/yu2u2n98nnz0ngonf0ts.gif)
Вузол debug використовується для відображення повідомлення на боковій панелі редактору.
У описі вузла inject ми використовували debug для того щоб побачити яке повідомлення надіслав вузол.
debug має властивість 'output':
- complete msg object - виводить весь об'єкт який прийшов
- msg дозволяє вивести тільки певне поле наприклад msg.payload В наступних прикладах ми будем взаємодіяти з іншими вузлами та побачимо детальнішу роботу із 'debug'.
Вузол function дозволяє запускати код JavaScript для обробки даних які надійшли до вузла.
Вузли http in та http response використовуються для прийняття запитів та повернення відповіді.
Вузол http in приймає запит. У ньому потрібно вибрати метод та вказати URL. У нашому прикладі метод GET та URL /total
Вузол http response повертає відповідь. Цей вузол завжди повинен приймати властивість payload для того, щоб повернути інформацію.
Будь-який ланцюг, який починається з http in повинена мати в кінці http response, в іншому випадку він не буде повертати відповідь із запиту.
Створимо ланцюг, який приймає два значення та повертає їхню суму.
Вузол function
const body = msg.req.body;
const total = body.banana + body.tomato;
msg.statusCode = 200;
msg.payload = {
"total": total
};
return msg;
Скопіюєм посилання на node-red у якому зберігається наш ланцюг та допишем URL /total.
Для того, щоб зробити запит використаєм Postman. У body передаєм дані, які приходять у наш запит та натискаєм кнопку Send.
У http in приходить об'єкт який має властивість req (це об'єкт запиту який містить у собі інформацію про запит).
За допомогою вузла debug можна побачити що приходить у інші вузли.
Top comments (0)