AWS S3 签名 url 编码结果 "SignatureDoesNotMatch"

AWS S3 signed url encode resulting "SignatureDoesNotMatch"

我正在使用 cordova 文件传输从 aws s3 使用签名 url 下载文件,因为 cordova 文件传输对 uri 进行编码,签名中的“%”被转换为“%25”,因此,结果签名不匹配

尝试像这样设置您的选项:

options = {
            fileKey: 'file',
            fileName: name,
            chunkedMode: false,
            mimeType: 'audio/3gpp',
            httpMethod: 'PUT',
            // Important!
            headers: {
                'Content-Type': 'audio/3gpp' // < Set explicitly otherwise it becomes multipart/form-data which won't work with S3
            },
            encodeURI: false // < Stops any extra encoding by file transfer logic
        }

我花了很多痛苦的时间才获得与 cordova/S3 一起使用的预签名 PUT。祝你好运。