2015-12-24 28 views
5

私はLaravel 5を使用しています。強制的に選択したファイルをダウンロードしようとしましたが、何も起こりません。laravelでファイルを強制ダウンロード

public function downloadUserFile(){ 
     $result = $_POST['filename']; 
     $entry = File::where('filename', $result)->firstOrFail(); 
     $file = Storage::disk()->get($entry->filePath); 
     $headers = array('Content-Type' => $entry->mimetype); 
     return response()->download(storage_path($entry->filePath), $result, $headers); 
} 

とレスポンスヘッダは

Accept-Ranges: none 
Cache-Control: public 
Connection: Keep-Alive 
Content-Disposition: attachment; filename="SIGNAL - Nadezdata.mp3" 
Content-Length: 4205059 
Content-Type: audio/mpeg 

OKであるように見えるあなたは間違って何を知っていますか?

答えて

1

私は問題が経路にあると思います。 config/filesystems.phpローカルパスでは、デフォルトで

は、このように定義される:storage_path('app')、あなたは、ダウンロードに次のパスを渡す:storage_path($entry->filePath)(なしappはここに含まれていません)。あなたは何をすべき

が変化している:

return response()->download(storage_path($entry->filePath), $result, $headers); 

へ:

return response()->download(storage_path('app/'.$entry->filePath), $result, $headers); 
+0

は、私はすでにそれを変更しました。しかし、私は何も見通しには達していません。これが問題なのでしょうか? – Alex

+0

あなたはどういう意味ですか?あなたはファイルをダウンロードするために単純なフォースブラウザをクリックした後、ここでは何も表示しません。それはそれです –

+0

しかし何も起こりません。強制ダウンロードはありません – Alex

関連する問題