【问题标题】:Laravel 7 Incorrect MIME Type DetectedLaravel 7 检测到错误的 MIME 类型
【发布时间】:2020-08-22 17:12:43
【问题描述】:

PHP 7 上的 Laravel 7 检测到 .ogg 扩展名的 application/octet-stream 的 MIME 类型不正确。

这是适用的文件请求转储:

Illuminate\Http\UploadedFile {#1274 ▼
  -test: false
  -originalName: "03 - See You Tonite.ogg"
  -mimeType: "application/octet-stream"

有人知道解决方法吗?

【问题讨论】:

  • 你确定它真的是一个 ogg 文件(它可以播放吗?)而不是其他刚刚重命名为 ogg 的文件。
  • 是的,这是一个可以播放的有效文件。
  • 你的验证码呢?
  • 'audio' => 'sometimes|mimes:mpeg,mpga,mp3,ogg,wav|max:8000',
  • 尝试查看here 以获得一些解决方案

标签: php laravel mime-types laravel-7 ogg


【解决方案1】:

首先检查您的 mime 类型文件:

 return $request->file('field_name')->getMimeType();

现在可以在 AppServiceProvider 的 boot 方法中添加如下代码:

public function boot()
    {
       
        Validator::extend('ogg_extension', function($attribute, $value, $parameters, $validator) {
             
            if(!empty($value->getClientOriginalExtension()) && ($value->getClientOriginalExtension() == 'ogg')){
                return true;
            }else{
                return false;
            }
             
        });
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-10-05
    • 2016-05-20
    • 2016-09-26
    • 2018-04-08
    • 2015-09-17
    • 2011-12-01
    • 2012-04-11
    • 1970-01-01
    相关资源
    最近更新 更多