我正在为节点js上的mosca创建一个物联网服务。它经常崩溃到订阅区域,我无法显示传入的消息。
如何在authorizeSubscribe字段中看到传入的消息?也是authorizeSubscribe字段崩溃
const mosca = require('mosca');
const settings = {
port: 1883,
};
const server = new mosca.Server(settings);
server.on('ready', setup);
function setup() {
server.authenticate = authenticate;
server.authorizePublish = authorizePublish;
server.authorizeSubscribe = authorizeSubscribe;
console.log('Mosca server is up and running');
}
const authenticate = function(client, username, password, callback) {
console.log("authenticatealanı", username + " " + password);
const authorized = (username === 'alice' && password.toString() === 'secret');
if (authorized) client.user = username;
callback(null, authorized);
};
// In this case the client authorized as alice can publish to /users/alice taking
// the username from the topic and verifing it is the same of the authorized user
const authorizePublish = function(client, topic, payload, callback) {
console.log("authorizePublish " + topic + " "+ payload);
//callback(null, client.user === topic.split('/')[1]);
};
// In this case the client authorized as alice can subscribe to /users/alice taking
// the username from the topic and verifing it is the same of the authorized user
const authorizeSubscribe = function(client, topic, message, callback) {
console.log("new Data Auth subscribe"+ topic );
console.log(message);
//callback(null, client.user === topic.split('/')[1]);
};发布于 2020-05-24 17:43:42
如果您的授权函数从未调用在callback中传递的内容,那么它们将永远不会授权任何内容.
https://stackoverflow.com/questions/61964879
复制相似问题