npm 包 node-red-contrib-http-request-ucg 使用教程

阅读时长 4 分钟读完

简介

node-red-contrib-http-request-ucg是一个基于Node.js的Web框架——Node-RED的插件,可以实现在Node-RED流程中发送HTTP请求,获取响应并进行处理。它支持多种请求方式及参数配置,十分适合在前端开发中进行数据交互。

本文将从使用环境、安装、配置及示例等方面详细介绍如何使用此插件。

使用环境

node-red-contrib-http-request-ucg要求运行Node-RED的环境中,可以在Node-RED的官方网站(https://nodered.org/ )下载并安装最新版本的Node-RED。在安装完成后,请在Node-RED的“节点管理器”(Nodes Manager)中搜索并安装node-red-contrib-http-request-ucg节点。安装完成后重启Node-RED。

安装

node-red-contrib-http-request-ucg的安装比较简单。经过Node-RED的“节点管理器”搜索安装后,即可在Node-RED中使用此节点。

配置

node-red-contrib-http-request-ucg的配置如下图所示:

  • Method: 设置请求方法(GET、POST、PUT、DELETE等)。
  • URL: 设置请求的URL地址。
  • Query Parameters: 可选配置,设置查询参数。
  • Headers:可选配置,设置请求头。
  • Body: 设置请求数据(JSON、XML、表单数据等)。
  • Output:设置输出格式(payload、headers、statusCode等)。

示例

以请求百度翻译API获取翻译结果为例:

  1. 从Node-RED左侧“输入”区域拖拽“inject”节点到工作区,并设置payload为待翻译的文本。如图所示:

  2. 从Node-RED左侧“http”区域拖拽“http request(ucg)”节点到工作区,连接“inject”和“http request(ucg)”节点。配置如下:

  • Method: 设置请求方法为POST。
  • URL: 设置API接口地址为:http://api.fanyi.baidu.com/api/trans/vip/translate。
  • Headers:设置请求头为JSON格式,包括Content-Type和Accept两个参数。
  • Body:设置请求数据为JSON格式,包括待翻译文本、源语言、目标语言及AppID、密钥等参数。
-- -------------------- ---- -------
-
    ---------------- 
    -------------- 
    ---------- 
    ------------- ------- 
    -------------------------------- 
    ----------
    ----------- ----
-

其中,msg.payload为从“inject”节点传递过来的翻译文本。此处源语言默认为自动检测(auto),目标语言为英语(en)。

  1. 添加“function”节点,用于处理API返回的数据。如图所示:

代码如下:

其中,JSON.parse(msg.payload)将API返回的JSON数据解析为对象;res.trans_result[0].dst从解析后的对象中获得翻译结果;msg.payload = trans_result将翻译结果赋值给msg.payload,最后返回msg。

  1. 最后,添加一个“debug”节点,用于输出翻译结果。如图所示:

至此,整个Node-RED流程的设计完成。点击右上角的“部署”按钮,运行此流程。在“inject”节点输入待翻译的文本,即可在“debug”节点中看到翻译结果。如图所示:

总结

本文主要介绍了node-red-contrib-http-request-ucg的使用方法及示例,使前端开发者能够轻松地在Node-RED中进行Web数据交互。当然,这只是此插件功能的冰山一角,读者可根据实际需求进行更多的实践。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005662e81e8991b448e20eb

纠错
反馈