uni-app ani图片 获取图片信息失败 getImageInfo:fail invalid

发布于 1周前 作者 sinazl 来自 Uni-App

uni-app ani图片 获取图片信息失败 getImageInfo:fail invalid

开发环境 版本号 项目创建方式
Windows 64 位操作系统 HBuilderX
产品分类:uniapp/小程序/微信

PC开发环境操作系统:Windows

PC开发环境操作系统版本号:64 位操作系统, 基于 x64 的处理器

HBuilderX类型:正式

HBuilderX版本号:3.4.7

第三方开发者工具版本号:stable 1.05.2204250

基础库版本号:WeChatLib: 2.24.2

项目创建方式:HBuilderX

示例代码:

```js
export default {  
    data() {  
        return {  
            url: 'https://dev.hictec.cn/pbSvc/sys/common/static/temp/a_1649495070864.jpg',  // 失败 实际的图片格式为heic...  
        }  
    },  
    async mounted() {  
        try {  
            const res = await this.getImageInfo(this.url);  
            console.log(res);  
        } catch (e) {  
            console.log(e);  
        }  
    },  
    methods: {  
        getImageInfo(src) {  
            return new Promise((resolve, reject) => {  
                uni.getImageInfo({  
                    src: src,  
                    success: (res) => {  
                        resolve({  
                            path: res.path, // 图片的本地路径  
                            width: res.width,  
                            height: res.height  
                        });  
                    },  
                    fail: (err) => {  
                        console.log(err);  
                        reject(err);  
                    }  
                })  
            })  
        },  
    }  
}

操作步骤: 运行bug页面即可显示

预期结果: 返回获取的图片信息

实际结果: 接口调用失败回调函数返回:{errMsg: "getImageInfo:fail invalid"}

bug描述: 获取图片格式为ani的网络图片,接口调用失败回调函数返回:{errMsg: "getImageInfo:fail invalid"}

图片扩展名手动修改为.jpg

通过Hex插件查看图片二进制,以5249 4646开头

(好像…应该在微信开发者工具提,好像都不算bug…嗯~ o( ̄▽ ̄)o)


1 回复

在使用 uni-app 开发时,如果你遇到 getImageInfo:fail invalid 的错误,通常是因为在调用 uni.getImageInfo 方法时,传入的图片路径无效或不合法。以下是一些可能的原因和解决方法:

1. 图片路径问题

  • 相对路径:确保你传入的图片路径是有效的。如果是相对路径,确保路径是相对于当前文件的正确路径。
  • 网络图片:如果你使用的是网络图片,确保图片的 URL 是有效的,并且可以在浏览器中直接访问。
  • 本地图片:如果你使用的是本地图片,确保图片已经正确放置在项目目录中,并且路径是正确的。

2. 图片格式问题

  • 确保图片格式是支持的格式(如 .jpg, .png, .gif 等)。
  • 如果你使用的是 base64 格式的图片,确保 base64 字符串是完整的且格式正确。

3. 图片路径编码问题

  • 如果图片路径中包含特殊字符(如空格、中文等),确保路径已经被正确编码。

4. 跨域问题

  • 如果你使用的是网络图片,并且图片所在的服务器没有正确配置 CORS(跨域资源共享),可能会导致获取图片信息失败。确保图片服务器允许跨域访问。

5. 检查代码

  • 检查 uni.getImageInfo 的调用代码,确保传入的参数是合法的。例如:

    uni.getImageInfo({
      src: 'https://example.com/image.jpg',
      success: function (res) {
        console.log(res.width);
        console.log(res.height);
      },
      fail: function (err) {
        console.error('获取图片信息失败:', err);
      }
    });
回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!