-1

NodeJS では、 https ://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-node-node-getstarted の基本的なサンプル ドキュメントを使用しています。

ただし、次のエラーが表示されます。

iothub.Device は Object のコンストラクタではありません。(/Users/luis.valencia/Projects/IoTSamples/NodeJSIoTHelloWorld/CreateDeviceIdentity.js:7:14) Object.Module._extensions..js (module.js:550) で Module._compile (module.js:541:32) で:10) Module.load (module.js:458:32) で tryModuleLoad (module.js:417:12) で Function.Module._load (module.js:409:3) で Module.runMain (module.js) :575:10) 実行時 (bootstrap_node.js:352:7) 起動時 (bootstrap_node.js:144:9) で 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);
}
4

1 に答える 1

0

npm パッケージにバグがあり、github で MS に報告した後、修正され、一晩でリリースされたので、パッケージを再インストールするだけで問題は解決しました。

于 2016-11-17T19:53:05.717 に答える