从绝对 URL 读取图像文件时的 ENCODING_ERR

Posted

技术标签:

【中文标题】从绝对 URL 读取图像文件时的 ENCODING_ERR【英文标题】:ENCODING_ERR when reading image file from absolute URL 【发布时间】:2017-07-15 17:08:08 【问题描述】:

我正在关注this guide,了解如何在 iPhone 模拟器 上使用 Ionic 3 上传图像文件。但是我被控制台打印的这个错误卡住了

"code":5,"message":"ENCODING_ERR"

代码如下:

      this.file.resolveLocalFilesystemUrl(dto.image)
        .then((entry: FileEntry) => entry.file(file => 
          const reader = new FileReader();
          reader.onloadend = () => 
            //do something
          ;
          reader.readAsArrayBuffer(file);
        ))
        .catch(err => console.log(JSON.stringify(err)));

dto.image 的值为:

/Users/myUsername/Library/Developer/CoreSimulator/Devices/05972D1E-F805-46E4-B164-BB95F116697A/data/Containers/Data/Application/1096409B-6FA3-4660-97AE-EAF3E2472046/tmp/cdv_photo_013.jpg

我正在使用ionic native File plugin

提前致谢。

【问题讨论】:

【参考方案1】:

看起来很愚蠢,但这是解决方案:

在 url 字符串的开头附加 file:// 以便它可以工作。

所以开始会像 file:///Users....

这没有记录,但我已经从这个链接猜到了

cordova ios resolveLocalFileSystemURL ENCODING_ERR in cordova.file.applicationDirectory

【讨论】:

我的应用正在使用 WKWebView 并且我尝试使用 normalizeURL 但它不起作用。所以我又开始使用 file:///,它可以工作了,谢谢! 你救了我的命!

以上是关于从绝对 URL 读取图像文件时的 ENCODING_ERR的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Django QuerySet 中获取绝对图像 URL 列表?

如何从 Python 中的 URL 读取图像数据?

文件操作

从远程服务器获取时的图像压缩

未读取请求正文时的 ERR_INCOMPLETE_CHUNKED_ENCODING

从 Thumbor 读取图像