当前位置: 首页 > news >正文

Node Red 与axios简易测试环境的搭建

        为了学习在vue3中如何使用axios,我借Sider Fusion的帮助搭建了基于node的简易测试环境。

       Axios 是一个基于 Promise 的 HTTP 客户端,通常用于浏览器环境,但它也可以在 Node.js 环境中使用。因此,可以在 Ubuntu 的 Bash 环境下通过 Node.js 使用 Axios。

步骤:

  1. 安装 Node.js 和 npm:
    如果您尚未安装 Node.js,请通过以下命令安装(通常会包括 npm):

    sudo apt update  
    sudo apt install nodejs npm

    您可以检查安装是否成功:

    node -v 
    npm -v 

    创建项目:创建一个新的目录并进入:

  2. mkdir my-axios-app 
    cd my-axios-app 

    初始化 npm:

  3. 初始化一个新的 npm 项目:

    npm init -y 

    安装 Axios:

  4. 使用 npm 安装 Axios:

    npm install axios 

    编写 Axios 脚本:

  5. 创建一个新的 JavaScript 文件,如 app.js

    nano app.js 

    打开 app.js,然后添加以下代码:

    const axios = require('axios');  axios.get('http://www.xxxxx.cn:1880/api/data')  .then(response => {  console.log('Response from Node-RED:', response.data);  })  .catch(error => {  console.error('Error:', error);  });
    

    运行脚本:

  6. 使用 Node.js 运行脚本:

    node app.js 

    NodeRed节点



  7. [{"id": "6f67ed6250fc6293","type": "tab","label": "流程 4","disabled": false,"info": "","env": []},{"id": "cbeb42c4ff466487","type": "debug","z": "6f67ed6250fc6293","name": "debug 20","active": true,"tosidebar": true,"console": false,"tostatus": false,"complete": "false","statusVal": "","statusType": "auto","x": 600,"y": 200,"wires": []},{"id": "71b003bcbda86c27","type": "function","z": "6f67ed6250fc6293","name": "function 10","func": "msg.payload = { message: \"Hello from Node-RED!你好\" };\nreturn msg;","outputs": 1,"timeout": 0,"noerr": 0,"initialize": "","finalize": "","libs": [],"x": 430,"y": 200,"wires": [["cbeb42c4ff466487","a7ce06a8882a6108"]]},{"id": "06cfce3558445895","type": "http in","z": "6f67ed6250fc6293","name": "","url": "/api/data","method": "get","upload": false,"swaggerDoc": "","x": 250,"y": 200,"wires": [["71b003bcbda86c27"]]},{"id": "a7ce06a8882a6108","type": "http response","z": "6f67ed6250fc6293","name": "","statusCode": "","headers": {},"x": 610,"y": 260,"wires": []}
    ]

      实际代码测试及结果,url请换成自己的域名  

      nodered返回的结果

      

使用POSTMAN测试及结果

 Google Chrome测试及结果

AXIOS 向Nodered post数据

const axios = require('axios');  const postDataToNodeRed = async () => {  try {  const response = await axios.post('http://www.xxxxx.com:1880/api/data', {  key1: 'value1',  key2: '你好',  // 其他数据  });  console.log('Response from Node-RED:', response.data);  } catch (error) {  console.error('Error while sending data to Node-RED:', error);  }  
};  postDataToNodeRed(); 

NodeRed节点

 

 

msg.payload = {receivedData: msg.payload,message: "Data received successfully"
};
return msg;

[{"id": "5e7fbd551b9ac7da","type": "tab","label": "流程 5","disabled": false,"info": "","env": []},{"id": "1917a20da9f650f4","type": "http in","z": "5e7fbd551b9ac7da","name": "","url": "/api/data","method": "post","upload": false,"swaggerDoc": "","x": 260,"y": 220,"wires": [["844bf33a8bc338b0"]]},{"id": "e428c6755d5a0a36","type": "debug","z": "5e7fbd551b9ac7da","name": "debug 22","active": true,"tosidebar": true,"console": false,"tostatus": false,"complete": "false","statusVal": "","statusType": "auto","x": 640,"y": 220,"wires": []},{"id": "02abf8b96935f1f4","type": "http response","z": "5e7fbd551b9ac7da","name": "","statusCode": "","headers": {},"x": 670,"y": 300,"wires": []},{"id": "844bf33a8bc338b0","type": "function","z": "5e7fbd551b9ac7da","name": "function 12","func": "msg.payload = {\n    receivedData: msg.payload,\n    message: \"Data received successfully\"\n};\nreturn msg;","outputs": 1,"timeout": 0,"noerr": 0,"initialize": "","finalize": "","libs": [],"x": 450,"y": 220,"wires": [["e428c6755d5a0a36","02abf8b96935f1f4"]]}
]

 node发送POST数据,并接收到Nodered返回的数据

 NodeRed收到的数据

 

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 用TensorFlow训练自己的第一个模型
  • 【传知代码】辅助任务改进社交帖子多模态分类(论文复现)
  • 离线安装MeterSphere遇到的问题
  • LabVIEW做二次开发时应该注意哪些方面?
  • TS中什么是字面量类型?
  • 如何用3个月零基础入门网络安全?_网络安全零基础怎么学习
  • Vue.js学习笔记(六)element表单校验规则
  • 雨量气象站:实时、准确地监测并记录降水情况
  • 【基础篇】MySQL数据库详解:基础知识详解
  • 每日一面系列之美团面试拷打:ConcurrentHashMap 为何不能插入 null?HashMap 为何可以
  • 从零开始写一个微信小程序
  • 深度学习------------丢弃法dropout
  • Python爬虫技术 第29节 实战案例分析
  • 【Golang】清理Markdown未引用图片
  • PHP如何实现登录认证和鉴权
  • “Material Design”设计规范在 ComponentOne For WinForm 的全新尝试!
  • css布局,左右固定中间自适应实现
  • es6(二):字符串的扩展
  • Facebook AccountKit 接入的坑点
  • Linux各目录及每个目录的详细介绍
  • PAT A1017 优先队列
  • Redis学习笔记 - pipline(流水线、管道)
  • SAP云平台运行环境Cloud Foundry和Neo的区别
  • Sublime text 3 3103 注册码
  • Twitter赢在开放,三年创造奇迹
  • vue 个人积累(使用工具,组件)
  • Webpack4 学习笔记 - 01:webpack的安装和简单配置
  • 初探 Vue 生命周期和钩子函数
  • 使用 5W1H 写出高可读的 Git Commit Message
  • 数据库写操作弃用“SELECT ... FOR UPDATE”解决方案
  • 体验javascript之美-第五课 匿名函数自执行和闭包是一回事儿吗?
  • 云大使推广中的常见热门问题
  • 06-01 点餐小程序前台界面搭建
  • HanLP分词命名实体提取详解
  • 阿里云重庆大学大数据训练营落地分享
  • ​ssh-keyscan命令--Linux命令应用大词典729个命令解读
  • ​一帧图像的Android之旅 :应用的首个绘制请求
  • # 数据结构
  • #14vue3生成表单并跳转到外部地址的方式
  • (4.10~4.16)
  • (9)目标检测_SSD的原理
  • (Java数据结构)ArrayList
  • (Matalb时序预测)WOA-BP鲸鱼算法优化BP神经网络的多维时序回归预测
  • (编程语言界的丐帮 C#).NET MD5 HASH 哈希 加密 与JAVA 互通
  • (二十一)devops持续集成开发——使用jenkins的Docker Pipeline插件完成docker项目的pipeline流水线发布
  • (附源码)node.js知识分享网站 毕业设计 202038
  • (附源码)spring boot智能服药提醒app 毕业设计 102151
  • (附源码)springboot教学评价 毕业设计 641310
  • (附源码)计算机毕业设计SSM疫情居家隔离服务系统
  • (六) ES6 新特性 —— 迭代器(iterator)
  • (一)ClickHouse 中的 `MaterializedMySQL` 数据库引擎的使用方法、设置、特性和限制。
  • (转)机器学习的数学基础(1)--Dirichlet分布
  • (转载)Linux 多线程条件变量同步
  • (状压dp)uva 10817 Headmaster's Headache
  • .net framework 4.0中如何 输出 form 的name属性。