2016-05-26 9 views
1

Ich versuche eine Datei von Amazon S3 Eimer zu laden.Laravel 5.2- Aufruf zu undefinierter Methode Illuminate Support Facades Response :: header()

Hier ist mein Code:

public function GetFile($userID) { 
    try { 
     $s3 = \Storage::disk('s3'); 
     $file = $s3->get('pathtofile'); 
     return (new Response($file, 200)) 
      ->header('Content-Type', 'application/pdf'); 
    } catch (\Exception $ex) { 
     return ''; 
    } 
} 

aber es gibt Fehler:

Call to undefined method Illuminate\Support\Facades\Response::header() 

Bitte leite mich.

Danke.

Antwort

7

Ändern Sie die Klasse, die Sie verwenden: ändern

Illuminate\Support\Facades\Response 

für

use Illuminate\Http\Response; 
+0

Es funktionierte. Danke :) – user2517610

+0

Aber die Fassade konnte nicht verwendet werden (wenn man bedenkt, dass es ein Wrapper der Klasse ist)? – JCarlos

+0

Obwohl die Fassade uns hilft, die Klasse leicht zu verwenden, implementiert sie nicht alle Methoden aus der Klasse. Wie Sie in der [souce] (https://github.com/laravel/framework/blob/4.2/src/Illuminate/Support/Facades/Response.php) sehen können, wird die Klasse 'Illuminate \ Http \ Response' verwendet , erlaubt aber nicht die Verwendung der Header-Methode. –

Verwandte Themen