amazonweb服务-如何在浏览器中使用javascript sdk上传aws s3 bucket中的多部分文件
amazon web services - How to upload multipart files in aws s3 bucket using javascript sdk in browser
我试过使用函数
var bucket = new AWS.S3({params: {Bucket: 'mybucket'}});
var params = {Key: file.name, ContentType: file.type};
bucket.createMultipartUpload(params, function (err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
它的成功响应包括uploadedid,但我在s3 bucket中找不到该文件。那么,有没有其他方法可以从浏览器的javascript sdk中多部分上传文件??。我正在使用aws cognito进行身份验证。提前谢谢。
实际上这是一个四步过程。您已经调用了第一个Api,还有三个剩余的Api需要调用。
顺序如下:
2。http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3.html#uploadPart-财产。3.http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3.html#listParts-财产。4.http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3.html#completeMultipartUpload-财产。
对于以上三个api,您必须使用相同的密钥名称(您在第一个api中使用过)和上传id(您从第一个api的响应中获得的)
在第二个api中,您必须上传您的文件以及您选择的"部件号"。
然后,从第三个api调用中,您可以获得为文件生成的"TagId"以及您使用的"partnumber"。
现在,使用这个TagId和部件号,您必须调用最终的api。
这就完成了文件上传。
您使用的键是文件名。因此,如果上传正确,文件应该出现在mybucket/file.name
中。此外,您可以在控制台上记录事情,看看是否有任何问题。
如果使用.upload,它将自动使用post-mopart。并且您必须将s3 bucket cors策略设置为允许POST,并且HEAD加exposedHeaders ETag
- 如何在Javascript/ES6中的Aurelia浏览器应用程序中使用AWS S3
- 为什么使用AWS Signature v4对S3的REST调用并没有真正使用签名过程
- 如何使用JS检查AWS S3上是否存在动态创建的文件
- 如何在aws S3 javascript SDK中配置interval和max_attempts
- AWS S3 JavaScript 开发工具包 getSignedUrl 仅返回基本路径
- AWS JS S3:什么是'流'在ManagedUpload中
- 浏览器中出现AWS S3 Javascript错误
- 使用AWS SDK for JavaScript访问AWS S3
- 当使用预先签名的POST url将文件上传到AWS S3时,设置随机文件名
- AWS Lambda 函数和 S3 - 仅当对象发生更改时,才会更改 S3 中对象的元数据
- 如何使用 Node/Angular/JavaScript 将多个图像上传到 Amazon AWS S3 存储桶
- 节点.js将 imagemagick 的输出上传到 AWS S3
- 如何使用 JavaScript 删除 AWS S3 上的对象
- 如何使用 AWS S3 预签名帖子指定带扩展名的文件名
- 在节点 js 中使用 AWS 开发工具包将整个目录树上传到 S3
- 如何在 S3 AWS 中为对象创建签名 URL 时设置内容类型
- JavaScript aws-sdk S3 deleteObject(s) 成功,但实际上并没有删除任何内容
- 流星:显示来自 aws s3 的图像
- AWS 服务器端临时凭证是否可用于客户端 S3 上传
- AWS S3 ajax PUT 返回“我们计算的请求签名与您提供的签名不匹配”