问题描述
我正在尝试使用laravel将文件上传到保管箱。我按照我在文档中阅读的步骤进行操作,但是没有得到。
我安装了DropBox适配器,然后,我将提供程序创建为文档中的名称,并将代码也放置在文档中
提供者:
use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\Storage;
use League\Flysystem\Filesystem;
use Spatie\DropBox\Client as DropBoxClient;
use Spatie\FlysystemDropBox\DropBoxAdapter;
class DropBoxServiceProvider extends ServiceProvider
{
/**
* Register any application services.
*
* @return void
*/
public function register()
{
//
}
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
Storage::extend('dropBox',function ($app,$config) {
$client = new DropBoxClient(
$config['authorization_token']
);
return new Filesystem(new DropBoxAdapter($client));
});
}
}
我创建了磁盘的文件系统中
'dropBox' => [
'driver' => 'dropBox','authorization_token' => env('DROPBox_TOKEN'),],
在应用程序中,我添加了以下行
// DropBox
App\Providers\DropBoxServiceProvider::class,
在环境中我添加了以下几行。访问令牌和应用程序密码来自在保管箱中创建的api
DROPBox_TOKEN = <REDACTED>
DROPBox_SECRET = <REDACTED>
查看:
<div>
<form action="{{ route('uploadStore') }}" enctype="multipart/form-data" method="post">
@csrf
<input type="file" name="image">
<br>
<input type="submit" value="Enviar">
</form>
</div>
<div>
@if($errors->any())
<h4>{{$errors->first()}}</h4>
@endif
</div>
和控制器:
protected function index() {
$files = Storage::allFiles('teste-gobsruiz01');
return view('index',[
'files' => $files,]);
}
protected function store(Request $request) {
$file = $request->file("image");
$is_file_uploaded = Storage::disk('dropBox')->put('teste-gobsruiz01',$file);
if($is_file_uploaded){
return Redirect::back()->withErrors(['msg'=>'Succesfuly file uploaded to dropBox']);
} else {
return Redirect::back()->withErrors(['msg'=>'file Failed to uploaded on dropBox']);
}
}
我在保管箱中创建了api。名称是teste-gobsruiz01。我还创建了两条路线,即get和post。
如果有人可以帮助我,我表示感谢。我已经尝试了很长时间了
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)