Error0
Error0
  • 发布:2019-11-25 16:45
  • 更新:2019-11-25 17:09
  • 阅读:4509

【报Bug】公众号h5端,vivo手机上传图片,后端无法获取文件类型,导致类型验证不通过,图片上传失败

分类:uni-app

详细问题描述

在线测试地址:www.xjaft.com/test
微信内打开有问题
从相机选择正常,从本地选择有问题

前端代码

upload() {  
            uni.chooseImage({  
                success: chooseImageRes => {  
                    const tempFilePaths = chooseImageRes.tempFilePaths;  
                    uni.uploadFile({  
                        url: 'http://www.xjaft.com/api/v1/upload/img', //仅为示例,非真实的接口地址  
                        filePath: tempFilePaths[0],  
                        name: 'image',  
                        formData: {  
                                need_id: 1,  
                                name: 'test',  
                            user: 'test'  
                        },  
                        success: uploadFileRes => {  
                            console.log(uploadFileRes.data);  
                        }  
                    });  
                }  
            });  
        }

后端代码

public static function uploadImg(){  
        $file = request()->file('image');  
        $info = $file->validate(['ext' => 'jpg,jpeg,png,gif'])->move('../public/uploads');  
        if ($info) {  
            $save_name = $info->getSaveName();  
            $param = Request::param();  
            $save_name = str_replace('\\', '/', $save_name);  
            $data = [  
                'img_url' => 'uploads/' . $save_name,  
                'type_id' => $param['need_id']+0,  
                'name' => $param['name']  
            ];  
            $res = Images::create($data);  
            if($res->isEmpty()){  
                throw new UploadException();  
            }  
            $data = $res->toArray();  
            return $data;  

        } else {  
            // 上传失败获取错误信息  
            throw new UploadException(['msg' => $file->getError()]);  
        }  
    }
2019-11-25 16:45 负责人:无 分享
已邀请:
Error0

Error0 (作者)

浏览器端也上传失败

  • Error0 (作者)

    在线测试地址:www.xjaft.com/test

    2019-11-25 17:11

该问题目前已经被锁定, 无法添加新回复