iothub.Device 不是 Object 的构造函数。<anonymous>
iothub.Device is not a constructor at Object.<anonymous>
对于 NodeJS,我使用的是此处的基本示例文档:
https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-node-node-getstarted
但是我得到这个错误:
iothub.Device is not a constructor at Object.
(/Users/luis.valencia/Projects/IoTSamples/NodeJSIoTHelloWorld
/CreateDeviceIdentity.js:7:14) at Module._compile (module.js:541:32)
at Object.Module._extensions..js (module.js:550:10) at Module.load
(module.js:458:32) at tryModuleLoad (module.js:417:12) at
Function.Module._load (module.js:409:3) at Module.runMain
(module.js:575:10) at run (bootstrap_node.js:352:7) at startup
(bootstrap_node.js:144:9) at bootstrap_node.js:467:3
我的代码如下:
'use strict';
var iothub = require('azure-iothub');
var connectionString = 'HostName=xyz.azure-devices.net;SharedAccessKeyName=iothubowner;SharedAccessKey=xyz=';
var registry = iothub.Registry.fromConnectionString(connectionString);
var deviceId = "helloworlddevice";
var device = new iothub.Device(null);
device.deviceId = deviceId;
registry.create(device, function(err, deviceInfo, res) {
if (err)
registry.get(device.deviceId, printDeviceInfo);
if (deviceInfo)
printDeviceInfo(err, deviceInfo, res)
});
function printDeviceInfo(err, deviceInfo, res) {
if (deviceInfo)
console.log('Generated device key: ' + deviceInfo.authentication.SymmetricKey.primaryKey);
}
npm 包上有一个错误,在 github 上向 MS 报告后,它已修复,连夜发布,所以我重新安装包,问题就解决了。
对于 NodeJS,我使用的是此处的基本示例文档: https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-node-node-getstarted
但是我得到这个错误:
iothub.Device is not a constructor at Object. (/Users/luis.valencia/Projects/IoTSamples/NodeJSIoTHelloWorld /CreateDeviceIdentity.js:7:14) at Module._compile (module.js:541:32) at Object.Module._extensions..js (module.js:550:10) at Module.load (module.js:458:32) at tryModuleLoad (module.js:417:12) at Function.Module._load (module.js:409:3) at Module.runMain (module.js:575:10) at run (bootstrap_node.js:352:7) at startup (bootstrap_node.js:144:9) at bootstrap_node.js:467:3
我的代码如下:
'use strict';
var iothub = require('azure-iothub');
var connectionString = 'HostName=xyz.azure-devices.net;SharedAccessKeyName=iothubowner;SharedAccessKey=xyz=';
var registry = iothub.Registry.fromConnectionString(connectionString);
var deviceId = "helloworlddevice";
var device = new iothub.Device(null);
device.deviceId = deviceId;
registry.create(device, function(err, deviceInfo, res) {
if (err)
registry.get(device.deviceId, printDeviceInfo);
if (deviceInfo)
printDeviceInfo(err, deviceInfo, res)
});
function printDeviceInfo(err, deviceInfo, res) {
if (deviceInfo)
console.log('Generated device key: ' + deviceInfo.authentication.SymmetricKey.primaryKey);
}
npm 包上有一个错误,在 github 上向 MS 报告后,它已修复,连夜发布,所以我重新安装包,问题就解决了。