【问题标题】:AWS IoT with the JavaScript SDK and Raspberry Pi connection error带有 JavaScript 开发工具包和 Raspberry Pi 连接错误的 AWS IoT
【发布时间】:2018-06-05 17:15:23
【问题描述】:

我正在尝试连接到我的“东西”,即使用 node.js 在我的 AWS 账户中注册的 Raspberry Pi。所有凭据文件都存储并位于正确的路径(certs 文件夹)中。用于 node.js 的 aws.iot SDK 安装在 Raspberry Pi 的 ~/deviceSDK' 目录中。这是代码。

var awsIot = require('aws-iot-device-sdk');

var device = awsIot.device({
    keyPath: '/home/pi/deviceSDK/certs/private.pem.key',
    certPath: '/home/pi/deviceSDK/certs/certificate.pem.crt',
    caPath: '/home/pi/deviceSDK/certs/caCert.crt',
    clientId: 'Raspberry',
    region: 'us-west-2'
  });

device.on('connect', function() {
           console.log('connected');
});

当我运行代码时,我收到以下错误:

错误:提供的连接选项无效。

我用谷歌搜索了这个问题,发现应该在连接选项下添加主机。于是代码更新如下:

var awsIot = require('aws-iot-device-sdk');

    var device = awsIot.device({
        keyPath: '/home/pi/deviceSDK/certs/private.pem.key',
        certPath: '/home/pi/deviceSDK/certs/certificate.pem.crt',
        caPath: '/home/pi/deviceSDK/certs/caCert.crt',
        clientId: 'Raspberry',
        region: 'us-west-2',
        host:   'https://XXXXXXXXXX.iot.us-west-2.amazonaws.com'
    });


    device.on('connect', function() {
           console.log('connected');
    });

其中 XXXXXXXXXXX 显然是 AWS 提供的 Rest API Endpoint 来与我账户中的“事物”进行交互,如下图所示。

我的设备端点

现在我收到此错误:

events.js:183 投掷者; // 未处理的“错误”事件 ^

错误:getaddrinfo ENOTFOUND https://xxxxxxxxx.iot.us-west-2.amazonaws.com https://xxxxxxxxxx.iot.us-west-2.amazonaws.com:8883

知道是什么问题吗?感谢您的帮助。

【问题讨论】:

  • 你的树莓派能查到其他地址吗?也就是说,如果你 ssh 进入它,你可以做类似nslookup www.google.com 的事情吗?

标签: node.js amazon-web-services raspberry-pi


【解决方案1】:

通过从主机中删除 https 解决了问题。谢谢。

【讨论】:

    【解决方案2】:

    如果您缺少连接到 IoT 设备所需的对象的任何键值对,AWS 通常会引发此错误。因此,如果缺少任何必填字段,您将收到此错误。

    {
      keyPath: '',
      certPath: '',
      caPath: '',
      host: '',
      clientId: '',
      region: '',
    }
    

    确保确认您已正确提供所有参数

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-12
      • 1970-01-01
      • 2014-11-20
      • 2016-08-30
      • 2016-03-24
      • 2018-08-01
      相关资源
      最近更新 更多