我試圖將AWS Lambda中的JSON文件保存到S3。 (更精確地說:我想創建一個包含S3桶'gpiocontroll-XYZ'
內的「數據」的新文件'supertest.json'
)使用node.js將AWS Lambda中的JSON保存到AWS S3
lambda函數如下:
'use strict'
const aws = require('aws-sdk');
const s3 = new aws.S3();
//const fs = require('fs');
function saveJSONtoS3(data){
console.log('SAVEJSON', data);
var params = {
Bucket: 'gpiocontroll-XYZ', // your bucket name,
Key: 'test.txt', // path to the object you're looking for
Body: data
}
s3.putObject(params, function(err, data) {
// Handle any error and exit
if (err)
console.log('ERROR', err);
else {
console.log('UPLOADED SUCCESS');
}
console.log('INSIDE FUNCTION');
});
console.log('END')
}
module.exports = {
saveJSONtoS3 : saveJSONtoS3
}
上LAMBDA日誌看起來像:
2017-12-27T20:04:29.382Z 255d436d-eb41-11e7-b237-1190c4f33d2d SAVEJSON {"table":[{"pin":"1","state":"aus"}]}
2017-12-27T20:04:29.402Z 255d436d-eb41-11e7-b237-1190c4f33d2d END
END RequestId: 255d436d-eb41-11e7-b237-1190c4f33d2d
REPORT RequestId: 255d436d-eb41-11e7-b237-1190c4f33d2d Duration: 362.29 ms Billed Duration: 400 ms Memory Size: 128 MB Max Memory Used: 43 MB
所以它看起來一切都很好,但s3.putObject功能只是不被觸發。 Lambda和S3都在同一地區。 S3公開了IAM用戶。我是否需要以某種方式登錄Lambda函數?
非常感謝!
沒有's3.putObject'通話有 – hjpotter92
對不起。只更新了示例代碼。 – luckybusted
這不是AWS Lambda函數。 – dashmug