SASトークンを使用してIoTハブに接続するときに問題があります。 Microsoftの例では、NodeJSが暗号を使用してSASトークンを作成するためのサンプルコードがあります。しかし、NodeJSでこのコードを使用すると、thisエラーが発生します。IoTハブSASトークンノードJS暗号化エラー
しかし、私はチュートリアルのすべてをやったので、何も見当たりません。 コード例は以下の通りです:
// Creating SAS token
var crypto = require('crypto');
var generateSasToken = function (resourceUri, signingKey, policyName, expiresInMins) {
resourceUri = encodeURIComponent(resourceUri.toLowerCase()).toLowerCase();
// Set expiration in seconds
var expires = (Date.now()/1000) + expiresInMins * 60;
expires = Math.ceil(expires);
var toSign = resourceUri + '\n' + expires;
// using crypto
var decodedPassword = new Buffer(signingKey, 'base64').toString('binary');
const hmac = crypto.createHmac('sha256', decodedPassword);
hmac.update(toSign);
var base64signature = hmac.digest('base64');
var base64UriEncoded = encodeURIComponent(base64signature);
// construct autorization string
var token = "SharedAccessSignature sr=" + resourceUri + "&sig="
* base64UriEncoded + "&se=" + expires;
if (policyName) token += "&skn=" + policyName;
console.log("signature:" + token);
return token;
};
私は誰かがこの謎母と私を助けることができることを願っています。..
連結上の+トリック、ありがとうございました とても! –