步驟 :
1)環境安裝 node.js (下載下傳安裝包,下一步.....就行了)
這個是我的版本
IT-C1MPD4X5G943:webpack11 ganjun$ node -v
v14.15.1
IT-C1MPD4X5G943:webpack11 ganjun$
2)安裝nodejs的包管理器 cnpm
IT-C1MPD4X5G943:webpack11 ganjun$ cnpm -v
[email protected] (/usr/local/lib/node_modules/cnpm/lib/parse_argv.js)
[email protected] (/usr/local/lib/node_modules/cnpm/node_modules/npm/lib/npm.js)
[email protected] (/usr/local/bin/node)
[email protected] (/usr/local/lib/node_modules/cnpm/node_modules/npminstall/lib/index.js)
prefix=/usr/local
darwin x64 20.2.0
registry=
https://r.npm.taobao.org3)參考官網代碼
https://help.aliyun.com/document_detail/143599.html?spm=a2c4g.11186623.6.656.5dd67cd8K9IMzE4)代碼以及依賴
在package.json中添加以下依賴。
"dependencies": {
"rhea": "^1.0.12"
}
代碼
constcontainer=require('rhea');
constcrypto=require('crypto');
//建立Connection。
varconnection=container.connect({
//接入域名,請參見AMQP用戶端接入說明文檔。
'host':'11112560*******.iot-amqp.cn-shanghai.aliyuncs.com',
'port':5671,
'transport':'tls',
'reconnect':true,
'idle_time_out':60000,
//userName組裝方法,請參見AMQP用戶端接入說明文檔。其中的iotInstanceId,企業版執行個體請填寫執行個體ID,公共執行個體直接删除${YourIotInstanceId}。
'username':'4444444444|authMode=aksign,signMethod=hmacsha1,timestamp=1573489088171,authId=LTAIVne33sFywOG8,iotInstanceId=,consumerGroupId=DEFAULT_GROUP|',
//計算簽名,password組裝方法,請參見AMQP用戶端接入說明文檔。
'password':hmacSha1('9ViU8**********', 'authId=LTAIVne33sFywOG8×tamp=1573489088171'),
});
//建立Receiver Link。
varreceiver=connection.open_receiver();
//接收雲端推送消息的回調函數。
container.on('message', function(context) {
varmsg=context.message;
varmessageId=msg.message_id;
vartopic=msg.application_properties.topic;
varcontent=Buffer.from(msg.body.content).toString();
// 輸出内容。
console.log(content);
//發送ACK,注意不要在回調函數有耗時邏輯。
context.delivery.accept();
});
//計算password簽名。
functionhmacSha1(key, context) {
returnBuffer.from(crypto.createHmac('sha1', key).update(context).digest())
.toString('base64');
}