将录制的音频发送到S3

时间:2014-02-07 13:35:12

标签: node.js amazon-web-services amazon-s3 knox-amazon-s3-client recorder.js

我正在使用RecorderJs来录制音频。完成后;我想通过服务器将它保存到亚马逊S3(我使用knox库)(因为我不想共享密钥)。

recorder.exportWAV(function(blob) {
    // sending it to server 
});

在服务器端,使用knox ...

knox.putBuffer(blob, path, {"Content-Type": 'audio/wav', 
                            "Content-Length": blob.length},
                           function(e,r) {
                               if (!e) {
                                   console.log("saved at " + path);
                                   future.return(path);
                               } else {
                                   console.log(e);
                               }
                           });

这只节省了2个字节!!

也;这是节省服务器内存的最佳方法。或者有更好的选择吗?

我也看到了这一点:Recorder.forceDownload(blob[, filename])

我应该强制下载然后将其发送到服务器吗?

或者我应该直接从我的域名保存到S3。 S3中是否有一个选项不能被试图在我的服务器上存储数据的其他用户攻击?

1 个答案:

答案 0 :(得分:0)

  

或者我应该直接从我的域名保存到S3。是否有选项?   S3不能被其他用户试图在我的数据上存储数据   服务器

您可以在S3存储桶上使用S3存储桶策略或AIM策略来限制对存储桶的访问。

广告投放管理政策:http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucketPolicies.html

AIM政策:http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingIAMPolicies.html

关于这一点,SO上也有几个相关的主题,例如:

Enabling AWS IAM Users access to shared bucket/objects

AWS s3 bucket policy invalid group principal