2016-12-20 7 views
0

putObject()を使用する場合、AWS S3をモックする必要があります。S3 putObject()をユーザのメタデータでモックする方法は?

関数を呼び出すときに、ユーザーのメタデータ値でファイルを作成する必要があります。 私はWeb上でいくつかのコード例を見つけることを試みたが、私はこれだけベースコードが見つかりました:

var AWSMock = require('mock-aws-s3'); 
AWSMock.config.basePath = '/tmp/buckets/' // Can configure a basePath for your local buckets 
var s3 = AWSMock.S3({ 
    params: { Bucket: 'example' } 
}); 
s3.putObject({Key: 'sea/animal.json', Body: '{"is dog":false,"name":"otter","stringified object?":true}'}, function(err, data) { 
    s3.listObjects({Prefix: 'sea'}, function (err, data) { 
     console.log(data); 
    }); 
}); 

残念ながら、それはユーザメタデータ・マップが含まれていません。

答えて

1

putObject()関数に渡すパラメータには、S3オブジェクトに保存するメタデータのキーと値のペアを含むMetadataキーを含めます。

例:

s3.putObject({Key: 'sea/animal.json', Metadata: {MyKey: 'MyValue', MyKey2: 'MyValue2'}, Body: '{"is dog":false,"name":"otter","stringified object?":true}'}, function(err, data) { ... }); 

参照:http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3.html#putObject-property

関連する問題