Laravel Dropbox Fire Upload- InvalidArgumentException in Che



我想用Laravel上传dropbox Api文件。我已经使用以下代码从我的驱动器上传到dropbox。但在上传时,我得到以下错误:

InvalidArgumentException in Checker.php line 22:
'inStream' has bad type; expecting resource, got IlluminateHttpUploadedFile

如果有人遇到或解决了这个问题,请帮助我解决它。

这是我的控制器代码:

   public function dropboxFileUpload()
        {
            $Client = new Client(env('DROPBOX_TOKEN'), env('DROPBOX_SECRET'));
                  $dropboxFileName='';
                   $file = Input::file('image');
                $size = Input::file('image')->getSize();
                $name = Input::file('image')->getClientOriginalName();
                $dropboxFileName = '/'.$name;

            $Client->uploadFile($dropboxFileName,WriteMode::add(),$file, $size);
            $links['share'] = $Client->createShareableLink($dropboxFileName);
            $links['view'] = $Client->createTemporaryDirectLink($dropboxFileName);
            print_r($links);
        }

这是路由部分:

Route::post('dropboxFileUpload', 'ImportController@dropboxFileUpload');

这里是视图部分:

<form style="border: 4px solid #a1a1a1;margin-top: 15px;padding: 10px;" action="{{ URL::to('dropboxFileUpload') }}" class="form-horizontal" method="post" enctype="multipart/form-data" >
            <input type="file" name="image" />
              {!! Form::token(); !!}
            {!!   csrf_field() ; !!} 
            <button class="btn btn-primary">Import File</button>
        </form>

你能试一下吗

$Client->uploadFile($dropboxFileName,WriteMode::add(),$file, $size, null, true);

用于指示该文件是否用于测试目的。这会跳过验证。

第二件事是检查您是否创建了IlluminateHttpUploadedFile而不是SymfonyComponentHttpFoundationFileUploadedFile的对象

最新更新