本文章内容
1.了解IoT Hub中文件存储在了哪里
2.使用Node.js Device SDK上传TXT文件
3.在storage中查看IOT设备上传的文件
1. 设备经Device SDK 上传到Azure IoT Hub的文件存储到了Storage中,需提前配置好存储文件用的Storage及容器:
2. 使用Node.js SDK上传文件
下载安装Node.js http://nodejs.cn/
安装Node.js SDK:
npm install azure-iot-device azure-iot-device-mqtt --save
选择一个目录。
新建文件upload_to_blob.js,以下为代码(注意修改connectionString):
'use strict';
var Protocol = require('azure-iot-device-mqtt').Mqtt;
var Client = require('azure-iot-device').Client;
var fs = require('fs');
var connectionString = 'YOUR DEIVCE CONNECT STRING';
if (!connectionString) {
console.log('Please set the DEVICE_CONNECTION_STRING environment variable.');
process.exit(-1);
}
var filePath = 'log.txt';
var client = Client.fromConnectionString(connectionString, Protocol);
fs.stat(filePath, function (err, fileStats) {
if (err) {
console.error('could not read file: ' + err.toString());
process.exit(-1);
} else {
var fileStream = fs.createReadStream(filePath);
client.uploadToBlob('testblob.txt', fileStream, fileStats.size, function (err) {
fileStream.destroy();
if (err) {
console.error('error uploading file: ' + err.constructor.name + ': ' + err.message);
process.exit(-1);
} else {
console.log('Upload successful');
process.exit(0);
}
});
}
});
先npm init一直回车然后yes,创建package.json文件。
创建log.txt文件,内容随意。
然后执行下面命令
node upload_to_blob.js
查看容器,上传成功!