刚开始找了很多资料,同时结合读AWS的官方文档,没有提及uniapp如何上传AWS S3的完整实现方法。
之前用了JS-SDK在h5端浏览器上传是没问题,某天试试运行到手机上直接挂了,运行到手机上根本就不支持这个sdk。没法子了只能找uniapp官方自带的上传方式了,使用uni.uploadFile上传,上传需要的参数又去AWS的官方文档上找,啃这AWS文档折腾大半天,尝试了不同的方式,总算是通过uni.uploadFile()成功的传到了AWS S3上。
在uni.uploadFile整理参数时折腾了很久,之前一直报各种问题,不是报SignatureDoesNotMatch就是AccessDenied等等问题,其实这些问题还是由于formData的参数不正确,所以解决的方案还是要认真对好formData里参数!!!之前一直就是卡在这个formData地方。
formData里需要的参数参考资料:
https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-post-example.html - 官方form表单示例
https://docs.aws.amazon.com/zh_cn/IAM/latest/UserGuide/create-signed-request.html - 计算签名
3 个评论
要回复文章请先登录或注册
f***@163.com
你曾经说过
1***@qq.com