このスニペットでクラウドストレージから表示ファイルは、私は必要なものだけのようだ:Laravel:ブラウザLaravelのドキュメント、<a href="https://laravel.com/docs/5.5/responses#file-responses" rel="nofollow noreferrer">https://laravel.com/docs/5.5/responses#file-responses</a>から
return response()->file($pathToFile);
問題は、私のファイルは、S3のディスク上に格納されていることで、私はそれを適切に参照することはできません。
Storage::disk('s3')->getDriver()->getAdapter()->applyPathPrefix($myPath);
を使用して完全修飾ファイル名を取得しようとしました。それはちょうど$myPath
の値を返しました。
URLを取得しようとしましたStorage::disk('s3')->url($myPath);
URLはうまく見えますが、Symphonyには存在しません。ただし、Storage::disk('s3')->exists($myPath);
で確認すると、true
が返されます。
クラウドストレージからユーザーのブラウザに直接ファイルを表示するにはどうすればよいですか?
編集:私は$map->storeAs('/my/path/maps/filename.pdf', ['disk' => 's3']);
url()
の出力は "https://s3.ap-southeast-2.amazonaws.com/my.domain.com/my/path/maps/filename.pdf"- :以下
詳細ブラウザのアドレスバーにURLを入力しても問題ありません。
response()->file()
URLパラメータを受け入れません。それは事実ですか?
質問 - ファイルを一般公開する必要がありますか? (現在のところ、私はそれを非公開にしたいと思っています)。
あなたの第2のドットポイント、「URLの出力()は、」正しく見えます。あなたはどのようにurl()の出力を使用していますか?あなたは何を返すと思いますか? – Chris