当前位置 : 主页 > 网页制作 > Nodejs >

node.js – 如何将多个文件直接上传到Amazon S3?

来源:互联网 收集:自由互联 发布时间:2021-06-16
我想让Amazon S3 Plupload example与Node.js配合使用.但是,到目前为止,我所能得到的只是错误#2049.我不确定我做错了什么.我上传了crossdomain.xml文件. 这是我的政策文件和签名: var crypto = require
我想让Amazon S3 Plupload example与Node.js配合使用.但是,到目前为止,我所能得到的只是错误#2049.我不确定我做错了什么.我上传了crossdomain.xml文件.

这是我的政策文件和签名:

var crypto = require('crypto');

var s3 = {}
s3.bucket = 'BUCKET';
s3.accessKeyId = 'ACCESS_KEY';
s3.aws_secret_key = 'SECRET_KEY';
s3.policy = JSON.stringify({
    'expiration': '2012-10-01T00:00:00Z',
    'conditions': [ 
      {'bucket': s3.bucket }, 
      {'acl': 'private'},
      ['starts-with', '$key', ''],
      ['starts-with', '$Content-Type', ''],
      ['starts-with', '$name', ''],     
      ['starts-with', '$Filename', ''], 
      {"success_action_status" : "201"}
    ]});
s3.policy = new Buffer(s3.policy).toString('base64');
s3.signature = crypto.createHmac('sha1', s3.aws_secret_key).update(s3.policy).digest('base64');

难道我做错了什么?

如果我是你,我会使用一个可以与Amazon S3通信的库.自从我写这篇文章以后,我会推荐AwsSum,但还有其他人在那里.

> https://github.com/appsattic/node-awssum/

另请查看示例,以便了解如何操作:

> https://github.com/appsattic/node-awssum/tree/master/examples/amazon/s3

网友评论