从POSTMAN nodeJs向Azure服务总线发送消息

问题描述

我一直试图从POSTMAN向Azure Service Bus主题发送示例消息,但是它带有一个异常错误。我的疑问是,我正在使用NodeJ自己的“缓冲区”而不是“ utf8”模块生成SAS令牌。这就是为什么我“指定的HTTP动词(POST)无效”的原因。。这是我生成SAS令牌的代码段。

*function createSharedAccessToken(uri,saName,saKey) {
    if (!uri || !saName || !saKey) {
        throw "Missing required parameter";
    }
    console.log('inside the function')
    var encoded = encodeURIComponent(uri);
    var now = new Date();
    var week = 60 * 60 * 24 * 7;
    var ttl = Math.round(now.getTime() / 1000) + week;
    var signature = encoded + '\n' + ttl;
    var signatureUTF8 = Buffer.from(signature,'utf8');
    var hash = crypto.createHmac('sha256',saKey).update(signatureUTF8).digest('base64');
    return 'SharedAccessSignature sr=' + encoded + '&sig=' +
        encodeURIComponent(hash) + '&se=' + ttl + '&skn=' + saName;
}*

它是带有Authorization和Content-Type标头的POST调用。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)