": { "code": 400, "message": "Unsupported MIME type: image/..apng", "status": "I...

2025年11月25日 09:16 processing

错误信息

(HttpCode:400):0 - { "error": { "code": 400, "message": "Unsupported MIME type: image/..apng", "status": "INVALID_ARGUMENT" } } (traceid: 89bcdaf7f91a7b18bbf8c563d11f0094)

AI 解决方案

代码糕手 - 报错分析报告

1. 错误翻译


原文:Unsupported MIME type: image/..apng
译文:不支持的MIME类型:image/..apng

2. 原因分析


  • 根本原因:API请求中提供的图片MIME类型格式错误,存在重复的点号".."

  • 具体问题:MIME类型应为标准的image/apng格式,但实际传入了错误的image/..apng格式
  • 3. 解决方案


    修复图片上传时的MIME类型设置:

    // 错误的写法  ❌
    const mimeType = 'image/..apng'; // 格式错误
    
    // 正确的写法 ✅
    const mimeType = 'image/apng';   // 标准APNG格式
    

    或者在上传前进行格式验证:

    function validateMimeType(mimeType) {
        const validTypes = ['image/jpeg', 'image/png', 'image/apng', 'image/gif', 'image/webp'];
        return validTypes.includes(mimeType);
    }
    
    // 使用示例
    if (!validateMimeType(file.mimeType)) {
        throw new Error('不支持的图片格式');
    }
    

    4. ️ 预防措施


  • 格式验证:在文件上传前对MIME类型进行严格的正则表达式验证

  • 工具推荐:使用文件类型检测库(如file-type)自动识别正确的MIME类型
  • // MIME类型验证函数
    function sanitizeMimeType(mimeType) {
        return mimeType.replace(/\.+/g, '.').replace(/^\.|\.$/g, '');
    }
    

    Trace ID: 89bcdaf7f91a7b18bbf8c563d11f0094