请我需要帮助,我试图上传一个图像使用livewire,但遇到422(不可处理的实体)错误时,图像大小超过2MB。我使用Wamp服务器,我已经增加了内存限制,并在php.ini上传大小,但错误仍然存在
9udxz4iz1#
我遇到了类似的事情,并找到了解决办法。或许能帮上忙。实际上,Livewire上传在默认情况下对临时文件有最大的验证,我们可以在config/livewire.php中更改它:
... 'temporary_file_upload' => [ 'disk' => null, // Example: 'local', 's3' Default: 'default' 'rules' => null, // Example: ['file', 'mimes:png,jpg'] Default: ['required', 'file', 'max:12288'] (12MB) 'directory' => null, // Example: 'tmp' Default 'livewire-tmp' 'middleware' => null, // Example: 'throttle:5,1' Default: 'throttle:60,1' 'preview_mimes' => [ // Supported file types for temporary pre-signed file URLs. 'png', 'gif', 'bmp', 'svg', 'wav', 'mp4', 'mov', 'avi', 'wmv', 'mp3', 'm4a', 'jpg', 'jpeg', 'mpga', 'webp', 'wma', ], 'max_upload_time' => 5, // Max duration (in minutes) before an upload gets invalidated. ], ...
在规则中,我们可以设置:
'rules' => ['required', 'file', 'max:52288'],
当我们将其保留为null时,它将使用vendor文件中的条件:
public static function rules() { $rules = config('livewire.temporary_file_upload.rules'); if (is_null($rules)) return ['required', 'file', 'max:12288']; if (is_array($rules)) return $rules; return explode('|', $rules); }
1条答案
按热度按时间9udxz4iz1#
我遇到了类似的事情,并找到了解决办法。或许能帮上忙。
实际上,Livewire上传在默认情况下对临时文件有最大的验证,我们可以在config/livewire.php中更改它:
在规则中,我们可以设置:
当我们将其保留为null时,它将使用vendor文件中的条件: