# Node.js SDK接入示例
本文介绍使用Node.js语言的AMQP SDK接入华为云物联网平台，接收服务端订阅消息的示例。
#### 开发环境
本示例所使用的开发环境为Node.js 8.0.0及以上版本。请前往Node.js官网[下载](https://nodejs.org/en/download/)。安装成功之后可以通过以下命令查看node版本。
```
node --version
```
如果能够查询到node版本，且版本高于8.0.0则代表安装成功。
![](https://support.huaweicloud.com/usermanual-iothub/figure/zh-cn_image_0000001482376264.png)
#### 代码示例
1. 在本地计算机创建一个JavaScript文件(例：HwIotAmqpClient.js)，保存以下示例代码到文件中。参考[AMQP客户端接入说明](https://support.huaweicloud.com/usermanual-iothub/iot_01_00100_2.html)修改相关连接参数。
   ```
   const container = require('rhea');
   //获取当前时间戳
   var timestamp = Math.round(new Date());
   //建立连接。
   var connection = container.connect({
        //接入域名，请参考AMQP接入地址。
        'host': '${UUCID}.iot-amqps.*****.com',
        'port': 5671,
        'transport': 'tls',
        'reconnect': true,
        'idle_time_out': 8000,
        //userName组装方法，请参考客户端身份认证参数。
         'username': 'accessKey=${yourAccessKey}|timestamp=' + timestamp + '|instanceId=${instanceId}',
        //accessCode，请参考客户端身份认证参数。
        'password': '${yourAccessCode}',
        'saslMechanisms': 'PLAIN',
        'rejectUnauthorized': false,
        'hostname': 'default',
   });
   //创建Receiver连接。 队列名，可以使用默认队列DefaultQueue
   var receiver = connection.open_receiver('${yourQueue}');
   //接收云端推送消息的回调函数。
   container.on('message', function (context) {
        var msg = context.message;
        var content = msg.body;
        console.log(content);
        //发送ACK，注意不要在回调函数有耗时逻辑。
        context.delivery.accept();
    });
   ```
   
2. 进入上一步创建的文件（HwIotAmqpClient.js）所在目录，执行以下命令安装rhea库。
   ```
   npm install rhea
   ```
   安装完成后，项目文件如下图所示。
   ![](https://support.huaweicloud.com/usermanual-iothub/figure/zh-cn_image_0000001481914712.png "点击放大")
   
3. 通过命令启动AMQP客户端，命令如下。
   ```
   node HwIotAmqpClient.js
   ```
   
4. 运行结果示例
- 订阅成功： 显示如下日志代表AMQP客户端订阅成功，并成功获取到物联网平台数据。
  ![](https://support.huaweicloud.com/usermanual-iothub/figure/zh-cn_image_0000001991039357.png "点击放大")
  
- 订阅失败 以下日志代表AMQP客户端在物联网平台鉴权失败，请确认接入码是否正确，时间戳与标准时间的差异是否大于5分钟。
  ![](https://support.huaweicloud.com/usermanual-iothub/figure/zh-cn_image_0000001482234324.png "点击放大")
  
 
