ローカルストレージドライバのためのLALAVEL一時URL
最近、一時URLを使う必要がありました.LaravelはS 3ドライバーで箱から一時的なURLをサポートします.私はローカルディスクを使用していましたが、Laravelはローカルディスク用の一時的なURL機能をサポートしていません.この例外を取得している場合は、右の記事です.
以下の手順では、LALAVELアプリで
今すぐ簡単にローカルディスクの一時的なURLを生成することができます.
改善を提案したり、より良い方法を知っていればあなたのフィードバックを歓迎します.
RuntimeException with message 'This driver does not support creating temporary URLs.'
私のローカルディスクに一時URLロジックを追加することにしました.我々は、Laravel signed URLsを通してこれを成し遂げます.以下の手順では、LALAVELアプリで
getTemporaryUrl
関数を実装する方法について説明します.Step 1 : AppServiceProviderブートメソッドで次のコードを追加します。
Storage::disk('local')->buildTemporaryUrlsUsing(function ($path, $expiration, $options) {
return URL::temporarySignedRoute(
'local.temp',
$expiration,
array_merge($options, ['path' => $path])
);
});
URL::temporarySignedRoute
は、ルート名local.temp
を受け取ります.ステップ2:Webでルートを追加します。PHP
Route::get('local/temp/{path}', function (string $path){
return Storage::disk('local')->download($path);
})->name('local.temp');
これは一時URLを使用してファイルのダウンロードを許可します.今すぐ簡単にローカルディスクの一時的なURLを生成することができます.
disk = Storage::disk('releases-local');
return $disk->temporaryUrl($this->path, now()->addMinutes(5));
PS
改善を提案したり、より良い方法を知っていればあなたのフィードバックを歓迎します.
Reference
この問題について(ローカルストレージドライバのためのLALAVEL一時URL), 我々は、より多くの情報をここで見つけました https://dev.to/abrardev99/laravel-temporary-url-for-local-storage-driver-50ofテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol