首页 文章

无法安装/使用xmlhttprequest

提问于
浏览
0

我正在node.js / node-RED中执行我的第一步,并且需要从节点组件执行http请求(GET,带有和没有xml有效负载的POST),所以我认为xmlhttprequest是我的最佳选择 . 我有npm安装它 . 实际上将它安装在〜/ .node-red / node_modules和/ usr / local / lib / node_modules中,但每次启动node-RED时都不会激活我的节点组件,并出现以下错误:

Welcome to Node-RED
===================

7 Aug 09:05:20 - [info] Node-RED version: v0.17.5
7 Aug 09:05:20 - [info] Node.js  version: v6.11.2
7 Aug 09:05:20 - [info] Darwin 16.7.0 x64 LE
7 Aug 09:05:20 - [info] Loading palette nodes
7 Aug 09:05:21 - [warn] ------------------------------------------------------
7 Aug 09:05:21 - [warn] [rpi-gpio] Info : Ignoring Raspberry Pi specific node
7 Aug 09:05:21 - [warn] [synaptiq-solar] Error: Cannot find module 'xmlhttprequest'
7 Aug 09:05:21 - [warn] ------------------------------------------------------
7 Aug 09:05:21 - [info] Settings file  : /Users/rudi/.node-red/settings.js
7 Aug 09:05:21 - [info] User directory : /Users/rudi/.node-red
7 Aug 09:05:21 - [info] Flows file     : /Users/rudi/.node-red/flows_Rudi.local.json
7 Aug 09:05:21 - [info] Server now running at http://127.0.0.1:1880/
7 Aug 09:05:21 - [info] Waiting for missing types to be registered:
7 Aug 09:05:21 - [info]  - synaptiq-solar

我的组件的名称是synaptiq-solar,其代码首先需要xmlhttprequest组件,如下所示:

var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;

另外,我的package.json有一个引用xmlhttprequest的依赖部分,如下所示:

{
  "name": "synaptiq-solar",
  "version": "0.0.1",
  "description": "Just playing around, learning how to create a custom node",
  "dependencies": {
    "xmlhttprequest": "1.8.0"
  },
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "node-red": {
    "nodes": {
      "synaptiq-solar": "synaptiq-solar.js"
    }
  },
  "author": "Smappee n.v.",
  "license": "ISC"
}

那么我做错了什么?我应该在其他位置安装xmlhttprequest组件吗?还有另一个lib目录,node-RED正在寻找dependend组件吗?

1 回答

  • 2

    如果自定义节点具有外部依赖关系,则应在其 package.json 文件中声明它,以便它们与自定义模块一起安装 .

    如果您已将其创建为"local"节点( nodes 目录中只有 .js.html 文件且没有 package.json ),则应将其移至将其创建为模块 .

    该文档包含有关正确打包节点的指南:https://nodered.org/docs/creating-nodes/packaging

相关问题