百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程网 > 正文

Node-RED系列(八):Node-RED网络节点的使用

yuyutoo 2024-12-23 14:28 5 浏览 0 评论

上一期我们讲到了Node-RED中存储file分类节点的使用,利用存储节点我们可以创建文件,追加内容到指定文件,
监听一些文件的写入

本篇文章我来给大家讲一下Node-RED中网络network分类下的节点,该分类下有12个节点,

  • mqtt in 连接到MQTT代理并订阅来自指定主题的消息。
  • mqtt out 连接到MQTT代理并发布消息。
  • http in 创建用于创建Web服务的HTTP端点。
  • http response 将响应发送回从HTTP输入节点接收的请求。
  • http request 发送HTTP请求并返回响应。
  • websocket in WebSocket输入节点。
  • websocket out WebSocket输出节点。
  • tcp in 提供TCP输入选择。可以连接到远程TCP端口,或接受传入连接。
  • tcp out 提供TCP输出的选择。可以连接到远程TCP端口,接受传入的连接,或回复从TCP In节点收到的消息。
  • tcp request 一个简单的TCP请求节点。将msg.payload发送到服务器tcp端口,并期望得到响应。
  • udp in UDP 输入节点。在msg.payload中生成Buffer,字符串或Base64编码的字符串。支持组播。
  • upd out 该节点将msg.payload发送到指定的UDP主机和端口。支持组播。

这一模块是Node-red的核心模块,如果要与硬件,设备通信,都要通过该模块来实现。由于本章节点过多,所以分多期来讲,这一期我们先来看看 http in,http out, http request, ``

http in

该节点可以用于创建一个web服务的http接口,支持的方法有以下几种


GET, POST, PUT, DELETE PATHC, 也支持POST上传文件
编写一个接口很简单

  • 创建一个Http in 节点
  • 使用函数 function 节点来处理要返回的数据
  • 使用http out节点来返回数据到客户端

这就是一个完成的http请求链路。

该节点向后输出的内容有

payload GET请求包含任何查询字符串参数的对象。或者包含HTTP请求正文。
reqHTTP请求对象。该对象包含有关请求信息的多个属性。

  • body - 传入请求的正文。格式将取决于请求。
  • headers - 包含HTTP请求标头的对象。
  • query - 包含任何查询字符串参数的对象。
  • params - 包含任何路由参数的对象。
  • cookies - 包含请求cookie的对象。
  • files - 如果节点启用了文件上传,则为包含了上传的文件的对象。

res HTTP响应对象。此属性不应直接使用;HTTP Response节点记录了如何响应请求。该属性必须保留在传递给响应节点的消息上。

我们创建这样一个接口

接口的路径是 /getname 使用get请求

然后在后方添加一个function节点

这样就可以在flow中追加payload消息体了

http response

这个节点是为了将HTTP响应发送回客户端,
返回的消息体有这几个元素

  • payload 响应的正文。
  • statusCode 如果设置,则用作响应状态代码。默认值:200。
  • headers 如果设置,则提供HTTP头以包含在响应中。
  • cookies 如果设置,则可用于设置或删除cookie。

创建一个http response 追击到上一步的流中

部署后,在浏览器输入 ip:port/getname
会看到这样一个返回体

http request

该节点发送HTTP请求并返回响应。
有输入,有输出
输入有这些参数

  • url 如果未在节点中配置,则此可选属性设置请求的url。
  • method 如果未在节点中配置,则此可选属性设置请求的HTTP方法。必须是GET,PUT,POST,PATCH或DELETE之一。
  • headers 设置请求的HTTP头。
  • cookies 如果设置,则可用于发送带有请求的cookie。
  • payload 发送为请求的正文。
  • rejectUnauthorized 如果设置为false,则允许对使用自签名证书的https站点进行请求。
  • followRedirects 如果设置为false,则阻止遵循重定向(HTTP 301)。默认情况下为true
  • requestTimeout 如果设置为正数毫秒,将覆盖全局设置的httpRequestTimeout参数。

输出的参数

  • payload 响应的正文。可以将节点配置为以字符串形式返回主体,尝试将其解析为JSON字符串或将其保留为二进制buffer。
  • statusCode 响应的状态码,如果请求无法完成,则返回错误码。
  • headers 包含响应头的对象。
  • responseUrl 如果在处理请求时发生任何重定向,则此属性为最终重定向的URL。否则则为原始请求的URL。
  • responseCookies 如果响应包含cookie,则此属性是每个cookie的‘名称/值’键值对的对象。
  • redirectList 如果请求被重定向了一次或多次,则累积的信息将被添加到此属性。“location”是下一个重定向目标。cookie是从重定向源返回的cookie。

这里给出一个示例

请求一个接口,可以配置证书, 选择请求方式

然后在节点前添加,inject节点,用于触发接口,在节点后追加 debug节点打印消息

部署后触发流

相关推荐

TCP协议原理,有这一篇就够了

先亮出这篇文章的思维导图:TCP作为传输层的协议,是一个软件工程师素养的体现,也是面试中经常被问到的知识点。在此,我将TCP核心的一些问题梳理了一下,希望能帮到各位。001.能不能说一说TC...

Win10专业版无线网络老是掉线的问题

有一位电脑基地的用户,使用...

学习计算机网络需要掌握以下几方面基础知识

计算机基础知识操作系统:了解常见操作系统(如Windows、Linux)的基本操作和网络配置,例如如何设置IP地址、子网掩码、网关和DNS服务器等,以及如何通过命令行工具(如ping、tr...

网络工程师的圣经!世界级网工手绘268张图让TCP/IP直接通俗易懂

要把知识通俗地讲明白,真的不容易。——读者说TCP/IP从字面意义上讲,有人可能会认为TCP/IP是指TCP和IP两种协议。实际生活当中有时候也确实就是这两种协议。然而在很多情况下,它只是...

三分钟了解通信知识TCP与IP协议(含“通信技术”资料分享)

TCP/IPTCP/IP分层模型①应用层...

网闸与防火墙:网络安全设备的差异与应用

在网络安全领域,网闸(安全隔离网闸,GAP)和防火墙(Firewall)是两类重要的防护设备。尽管它们都服务于网络安全防护,但在设计理念、技术原理、安全效能及适用场景等方面存在显著差异,以下从五个维度...

S7-300的TCP/IP通信

一、首先在项目中创建2个S7-300的站点;二、硬件组态中,设置合适的TCP/IP地址,在同一网段内;...

西门子S7-1500 PLC的 MODBUS TCP通信

MODBUSTCP使MODBUS_RTU协议运行于以太网,MODBUSTCP使用TCP/IP和以太网在站点间传送MODBUS报文,MODBUSTCP结合了以太网物理网络和网络标准TC...

系统规划与管理师新版备考必备:第7章考点思维导图解析

备考系统规划与管理师的小伙伴们,福利又来啦!今天为大家带来《系统规划与管理师(第2版)》第7章考点的思维导图,助你高效梳理重点,让备考更有方向!...

TCP/IP、Http、Socket 有何区别与联系?

HTTP协议对应于应用层,Socket则是对TCP/IP协议的封装和应用(程序员层面上)。HTTP是应用层协议,主要解决如何包装数据。而我们平时说的最多的Socket是什么呢?实际上...

西门子PLC串口协议与以太网通信协议对比

西门子plc品牌众多,通信协议的类型就更多了,具体可分为串口协议和以太网通信协议两大类。...

网络编程懒人入门(十三):一泡尿的时间,快速搞懂TCP和UDP的区别

本文引用了作者Fundebug的“一文搞懂TCP与UDP的区别”一文的内容,感谢无私分享。1、引言...

程序员必备的学习笔记《TCP/IP详解(一)》

为什么会有TCP/IP协议在世界上各地,各种各样的电脑运行着各自不同的操作系统为大家服务,这些电脑在表达同一种信息的时候所使用的方法是千差万别。就好像圣经中上帝打乱了各地人的口音,让他们无法合作一样...

一文读懂TCP/IP协议工作原理和工作流程

简述本文主要介绍TCP/IP协议工作原理和工作流程。含义TCP/IP协议,英文全称TransmissionControlProtocol/InternetProtocol,包含了一系列构成互联网...

如何在 Windows 10 和 Windows 11 上重置 TCP/IP 堆栈

传输控制协议/Internet协议,通常称为TCP/IP,是您的WindowsPC如何与Internet上的其他设备进行通信的关键部分。但是当事情出错时会发生什么?你如何解决它?幸运的...

取消回复欢迎 发表评论: