我正在与 Devo 进行集成及其node library来自 NPM。
我已关注steps defined in the documentation我没有收到任何错误,但平台上没有收到消息。之前测试过发送http请求的平台,运行正常,可以看到表中的数据。
const sender = Devo.sender({
host,
port,
cert: Fs.readFileSync(cert),
key: Fs.readFileSync(key),
ca: undefined,
tag: "my.app.XXXX.test",
debug: true,
})
sender.send(message, (error) => {
if (error) {
Log.e("Error sending devo message: " + error)
return
}
Log.d("Sent OK")
})
我不会发送CA,因为我没有必要阅读,但这是我还没有尝试过的。 我尝试将端口作为字符串和数字发送。
回调永远不会被调用。
经过一些尝试:
我一直在尝试在没有证书的情况下发送,并且调用回调时没有错误。问题是它在 Devo 中不可见,但它有意义,因为证书应该包含域。我不知道发送的数据存储在哪里。
我已经检查过使用证书时不会调用回调。如果我使用私钥和 CA,回调将继续被调用。坏消息是数据在 Devo 中尚不可见。
最佳答案
感谢您联系我们。我们正在开发一个新版本来解决这个问题。如果您想继续前进,请随时使用以下解决方法:
const sender = devo.sender(...);
sender._socket.ref(); // add this line immediately after the previous one
sender.send(...);
完成此操作后,请考虑需要调用 sender.end()
才能停止该进程。
关于javascript - Devo Nodejs-sdk 不发送数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59859017/