文件上传返回空结果

时间:2016-12-01 01:45:21

标签: javascript html laravel

我是laravel 5和php的新手,所以我不明白为什么我会遇到这个问题。

我正在尝试使用ajax上传文件(视频或图片),但服务器返回空结果。即使我控制FormData,表单似乎是空的。

HTML

$.ajaxSetup({
     headers: {
          'X-CSRF-Token': $('meta[name=_token]').attr('content')
     }
});

$('#video-submit').on('click', function() {
     console.log(new FormData($("#upload-file")[0]));
     $.ajax({
          type:'post',
          url:'uploadvideo',
          data: new FormData($("#upload_form")[0]),
          processData: false,
          contentType: false,
          success:function(response){
               console.log(response);
          }
     });
});   

的Javascript

Route::post('/uploadvideo', 'UploadController@videoUpload');

路线

public function videoUpload() {
    return response()->json(json_encode(Input::all()));
}

控制器

FormData {}
[]

响应

{{1}}

1 个答案:

答案 0 :(得分:0)

您似乎正在使用Input Facade

尝试熟悉Request班级

而且,你返回JSON响应的方式似乎不对,所以试试吧。

  

注意

     

确保INI文件中的PHP Post Upload大小可以处理上传的文件大小,或者最终会出现空白的POST请求

     

php.ini文件上设置以下指令以容纳您的上传

     
      
  • post_max_size =(以MB为单位的大小,POST请求的总大小)
  •   
  • upload_max_filesize =(以MB为单位的大小,POST请求中单个文件的大小)
  •   

控制器

use Illuminate\Http\Requests;

public function videoUpload( Request $request ) {
    return response()->json( ['video' => $request->input( 'videologo' )] );
}