AWS S3 listBuckets使用节点js返回null

时间:2016-10-20 14:33:09

标签: node.js amazon-web-services amazon-s3

使用节点js我试图通过以下基本示例列出我在AWS S3中的存储桶。

http://docs.aws.amazon.com/AWSJavaScriptSDK/guide/node-examples.html

我的代码看起来像这样,并从localhost运行。

var AWS = require("aws-sdk"),
    con = require('./../lib/config.js');

var s3 = new AWS.S3({
    accessKeyId: con.fig.AWSAccessKeyId,
    secretAccessKey: con.fig.AWSSecretKey,
});

s3.listBuckets(function(err, data) {
    console.log(data);
});

但数据为空。

我错过了什么? 有设置的权限吗?我已经为用户设置了AmazonS3FullAccess权限。

我希望能够将文件从网站上传到S3存储桶。

1 个答案:

答案 0 :(得分:0)

试试这个。文档说如果err为null则请求成功。

s3.listBuckets(function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

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

使用以下

加载您的配置
var AWS = require("aws-sdk"),
con = require('./../lib/config.js');
AWS.config.update({
   accessKeyId: con.fig.AWSAccessKeyId,
   secretAccessKey: con.fig.AWSSecretKey
}) 

var s3 = new AWS.S3(); 
s3.listBuckets(function(err,data){ 
  if(err)console.log(err); 
  else console.log (data)
});