jQuery Fine Uploader S3上载文件大小的成功参数

时间:2018-09-10 17:51:12

标签: laravel amazon-s3 amazon fine-uploader

在将上传文件大小变量传递到端点(php控制器)时需要一些帮助。我尝试了多种方法,但似乎该方法无效。

首先,我无法获取getSize函数必需的上载文件“ id”。

第二,当我将getSize函数放在parames:对象中时,系统遇到错误。 我的部分代码如下:

var loader=$('#fine-uploader-s3').fineUploaderS3({
      ... ...       
     //deleted not relevant code above 
   uploadSuccess: {
    endpoint: "/s3/uploadSuccessful",
    customHeaders: 
        {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},

    params: {
              user_id:'{{Auth::user()->id}}', // there are params I want to 
              lot_id: '{{$lot->id}}',         //pass to the controller 
                                              //no issue. the php controller
                                              //got them. this code is part of 
                 .. ...                       //Laravel blade.
             size: function (){
                     return  this.uploaderMethods.getSize('0');
           //hard code file id 0 for test. not working. 

或者我尝试过:size: function (){ return this.getSize('0');

size: $('#fine-uploader-s3').fineUploaderS3('getSize', '0'),

它们都不起作用。感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

使用setUploadSuccessParams在文档中找到了答案。添加如下所示的回调块:

callbacks: {
                onSubmit: function (id, fileName) {
                    var size = this.getSize(id);
                    var newParams = {"size": size};
                    loader.setUploadSuccessParams(newParams, id)
                }
            },