【问题标题】:download image file from s3 server in cordova using filetransfer plugin使用文件传输插件从科尔多瓦的 s3 服务器下载图像文件
【发布时间】:2019-04-04 14:50:52
【问题描述】:

我正在尝试使用 cordova-plugin-file-transfer 从 s3 服务器下载图像

我的代码适用于来自 google 或不同服务器的其他图像。 但是当我尝试从 s3 下载时,它显示错误。

downloadimg ="https://s3.amazonaws.com/bucket/img/5.jpg";           
var fileTransfer = new FileTransfer();
var uri = encodeURI(downloadimg);
var package_root = cordova.file.externalRootDirectory + ".appname";
var imgindex = downloadimg.lastIndexOf("/") + 1;
var imgname = downloadimg.substr(imgindex);
var fileURL = package_root + imgname;
console.log(uri);
console.log(fileURL);
fileTransfer.download(
uri,
fileURL,
function (entry) {
console.log("success");
},
function (error) {
    console.dir(error);
},
false,
{
    headers: {
        "Authorization": "Basic dGVzdHVzZXJuYW1lOnRlc3RwYXNzd29yZA=="
    }
}
);

我尝试添加 {encodeURI:false};和 'Content-type':'image/jpg' 在选项标题中但不起作用。

【问题讨论】:

    标签: android cordova amazon-s3 cordova-plugins hybrid-mobile-app


    【解决方案1】:

    试试这个:

    1. 启用 CORS 配置。
    2. 删除标头身份验证
    3. 检查存储桶策略(您可以测试将对象公开)

    希望能帮到你。

    【讨论】:

    • 请发布您的 CORS 配置
    • *GET3000授权配置>
    • 我设置了 content-Type : image in metadata 和 content-Disposition only "attachment" 选项可用.
    • 好的,我以为你需要下载图片,删除附件;)
    • 错误我从文件传输插件正文中得到:"↵InvalidArgumentUnsupported授权类型消息> 批准 ArgumentName> 基本dGVzdHVzZXJuYW1lOnRlc3RwYXNzd29yZA == ArgumentValue> C4E0DF318D79BA76 的requestId> mzZOiZnZEVZ19AtKEVc21ULjmd0Tl6L + UAA / uOEASEkC3zlx5qW9FNkzCYaHXciLaPKU78H7Nbc = HOSTID> 错误> " 代码:1 异常:"s3.amazonaws.com/bucket/img/5.jpg" http_status:400 源:"s3.amazonaws.com/bucket/img/5.jpg" 目标:"file:///storage/emulated/0/app/5.jpg"
    猜你喜欢
    • 2017-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-08
    • 1970-01-01
    • 1970-01-01
    • 2012-09-21
    • 1970-01-01
    相关资源
    最近更新 更多