【发布时间】:2018-11-23 00:36:14
【问题描述】:
我有一个简单的 javascript 类,它使用 azure-iothub Node.js module 在 Azure IoT 中心创建/删除设备。
class AzureManager {
constructor(options) {
const { connectionString } = options;
this.registry = iothub.Registry.fromConnectionString(connectionString);
}
/**
* Gets some stats about the Iot Hub selected
* @returns {Object} an object with the following properties:
* totalDeviceCount, enabledDeviceCount, disabledDeviceCount
*/
getStats() {
return new Promise((resolve, reject) => {
this.registry.getRegistryStatistics((err, stats, res) => {
if (err) {
return reject(err);
}
return resolve(stats);
});
});
}
}
我已经为这个类开发了一个 Jest 测试,当我执行它时,所有测试都没有问题地通过。 当我在 Chrome 中执行代码时,出现以下错误。
request.js:150 选项 https://pysensors.azure-devices.net/statistics/devices?api-version=2018-06-30 网络::ERR_SPDY_INADEQUATE_TRANSPORT_SECURITY
我不知道我是否必须配置一些东西才能让它在所有最新版本的浏览器上运行。 我找到了this forum post(有点类似于this blog post),它谈到了服务器端的密码套件问题并强制客户端使用HTTP1/1,但由于我使用的是SDK,我无法控制关于如何执行请求。 谢谢
编辑:刚刚发现我正在使用的模块仅用于服务器端。使用 Firefox 我没有 SPDY 问题,无论如何我遇到了 CORS 问题,因为 Azure 不支持它。我在某处读到它在他们的路线图上,但不是首要任务。
【问题讨论】:
标签: azure-iot-hub azure-iot-sdk