1

NodeJs を使用してローカル ファイルをブロブ ストレージにアップロードしようとしています。サーバーから次の詳細が送信されます

{hostName: "StorageAccount", containerName:"containerName", "blobName": blobName, sasToken: "sasToken"}

以下は、ファイルをアップロードするために書かれたコードです

var azure = require('azure-storage');
var blobSvc = azure.createBlobServiceWithSas(result.hostName,result.sasToken);
blobSvc.createBlockBlobFromLocalFile(result.containerName,result.blobName,'server.json', 
function(error, result, response){
  if(!error){
   // file uploaded
 }
});

上記のコードは、Azure の実際のストレージ情報である場合は正常に動作しますが、ローカルの開発ストレージである場合は「指定されたリソースが見つかりません」というエラーがスローされます。

どんな助けでも大歓迎です。ありがとう

4

1 に答える 1

1

Node.js で Azure Storage Emulator を使用して開発するには、最初にローカル エミュレーターを起動していることを確認してください (詳細については、https://azure.microsoft.com/en-us/documentation/articles/storage-use-emulator/を参照してください)。generateDevelopmentStorageCredentials()これにより、ストレージ エミュレーターで実行されるサービスの作成に使用できる接続文字列が作成されます。エミュレータは別途ダウンロードする必要があります。

コード スニペットは次のとおりです。

var azure = require('azure-storage');
var fs = require('fs');

var devStoreCreds = azure.generateDevelopmentStorageCredentials();
var blobsrv = azure.createBlobService(devStoreCreds);

blobsrv.createContainerIfNotExists('container', {
  publicAccessLevel: 'blob'
}, function(error, result, response) {
  if (!error) {
    blobsrv.createBlockBlobFromLocalFile('container', <blobname>, <filepath>, function (error, result, response) {
            if (!error) {
                console.log("Uploaded" + result);
            }
            else {
                console.log(error);
            }
        }); 
  }else{
    console.log(error)
  }
})
于 2016-06-13T03:32:07.030 に答える