Laravel 5.4 + Fineuploader 5.9.0 - iOS平台上传的文件为空

时间:2018-06-07 11:01:33

标签: php jquery ios laravel vue.js

堆栈:

  • Laravel 5.4
  • jQuery 2.2.5
  • Vuejs 2
  • FineUploader 5.9

我使用FineUploader 5.9使用Vue2和Laravel 5.4上传文件(pdf,doc,图像等)。

上传过程很好,除了有时上传的文件大小为0字节。

我所拥有的模式在Safari 11 iPad的iOS平台上发布有时(v 11.3),偶尔也在Mac的OS X(v 10.13)上发生。我只有一个案例在Windows 10上使用Edge 16.失败的文件主要是PDF,但.doc.jpg

我很难重现它,所以这里是代码:

mounted()

中的

Vue组件

$('#js-fine-uploader').fineUploader({
    uploaderType: 'basic',
    multiple: true,
    autoUpload: false,
    button: $('#js-fine-uploader'),
    request: {
        endpoint: '/upload'
    },

    callbacks: {
        onValidateBatch: function(files, dropTarget) {
            $('.file .filename').trigger('keyup');
        }
    },
    validation: {
        allowedExtensions: []
    }
});

$('#js-fine-uploader').on({
    'upload': function(e, id, filename){

        var params = {
            filename: 'Custom name from an HTML input',
            _token: $('meta[name="csrf-token"]').attr('content')
        };
        $('#js-fine-uploader').fineUploader('setParams', params, id);
    }
});

请注意,FineUploader已经阻止了0字节文件的上传。这意味着上传的文件大小> 0

Laravel控制器

public function upload(Request $request) {
    $file = $request->file('qqfile');

    Storage::disk('local')->put($path, File::get($file));

    var_dump($file->getSize()); // ==> it works most of the time, but sometimes it returns 0
}

知道如何调试这个以及缺少什么?

0 个答案:

没有答案