步骤 : ?
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
cnpm 6.1.1 (/usr/local/lib/node_modules/cnpm/lib/parse_argv.js)
npm 6.14.9 (/usr/local/lib/node_modules/cnpm/node_modules/npm/lib/npm.js)
node 14.15.1 (/usr/local/bin/node)
npminstall 3.28.0 (/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.org
3)参考官网代码
https://help.aliyun.com/document_detail/143599.html?spm a2c4g.11186623.6.656.5dd67cd8K9IMzE
4)代码以及依赖
在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 timestamp 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 ); }