zoukankan      html  css  js  c++  java
  • uniapp 的 uview 上传组件 <uupload> 遇到的问题

    header 属性

    header 属性设置 {'Content-Type': 'application/json; charset=utf-8'},会导致问题,在开发者工具可以上传图片,但是在微信电脑端或者微信手机端无法上传图片。报错如下:

    [error] [0]Argument 1 passed to think\Validate::check() must be of the type array, null given
    

    报错的具体代码:

        private function validateUpload()
        {
            $max_size = 1024*1024*3; // 单位字节,这里表示最大1MB
            $request = request()->file();
            // var_dump($request);
            $rules = [
                'file' => [
                    'file',
                    'fileSize:' . $max_size,
                    'image',
                    // 'fileExt:jpg',
                ],
            ];
            $messages = [
                'file.file' => '必须上传文件',
                'file.fileSize' => '文件大小不能超过 3MB',
                'file.image' => '必须上传图片',
                // 'file.fileExt' => '图片文件后缀不合法',
            ];
            try {
                validate($rules, $messages)->check($request);
            } catch (\think\exception\ValidateException $e) {
                return ['err' => true, 'msg' => $e->getMessage()];
            }
            return ['err' => false];
        }
    

    原因是 request()->file() 获取到的值是 null。去掉 header 属性设置 Content-type 就好了。

    uploadAction 接口返回中文乱码

    uploadAction 接口返回含有中文,在调试工具 Network 里显示出来是乱码。暂未找到解决办法。

    微信公众号:PHP和Laravel学习

    公众号二维码图片
  • 相关阅读:
    python3笔记二十二:正则表达式之函数
    python3笔记二十一:时间操作datetime和calendar
    python3笔记二十:时间操作time
    python3笔记十七:python文件读写
    Spring常用注解
    Pytorch实现卷积神经网络CNN
    Keras实现autoencoder
    Keras实现LSTM
    TensorFlow实现CNN
    Recurrent Neural Networks vs LSTM
  • 原文地址:https://www.cnblogs.com/imzhi/p/15666550.html
Copyright © 2011-2022 走看看