我正在开发一个Web应用程序,用户可以使用AWS Cognito登录。使用AWS凭据登录后,我正在连接到AWS IoT设备
var device = AwsIot.device({
clientId: clientID,
host: host,
accessKeyId: credentials.accessKeyId,
secretKey: credentials.secretAccessKey,
protocol: 'wss',
sessionToken: credentials.sessionToken,
offlineQueueing: 'false'
});
然后,一旦用户使用AWS Cognito从应用程序注销
cognitoUser.signOut();
然后在注销后我也想断开AWS IoT设备。现在我甚至在注销后看到设备正在收听类似的事件
device.on('close', function() {})
device.on('error', function() {})
device.on('offline', function() {})
有人可以指定我应该调用哪个函数断开设备,以便它也不会听这些事件。
我正在阅读文档qazxsw poi但我没有得到任何具体的功能。
此外,我使用AWS凭证连接AWS IoT设备,一旦我从Cognito注销,那么设备应该已经自动断开连接。请告诉我这里的方法应该是什么。
我从AWS IOT支持团队那里得到了答案。
https://github.com/aws/aws-iot-device-sdk-js类是MQTT类的包装器,带有帮助程序以帮助连接到AWS端点要断开设备连接,可以调用
AwsIot.device
这将关闭连接并调用device.end();
。至于Cognito退出。这不会使Cognito已提供的用于建立连接的会话凭据无效。它们将继续有效,直到它们的假定角色时间到期为止。