Laravel-excel: Erlauben Sie, http-Header zu ändern, bevor sie vor dem Download gesendet werden

Erstellt am 19. Dez. 2014  ·  3Kommentare  ·  Quelle: Maatwebsite/Laravel-Excel

Um die Verwendung eines jquery-Plugins zu erleichtern, das ein Ajax-ähnliches Download-Erlebnis implementiert:
http://johnculviner.com/jquery-file-download-plugin-for-ajax-like-feature-rich-file-downloads

Die Implementierung erfordert, dass ein bestimmter Header als Teil der serverseitigen Antwort zurückgesendet wird, was derzeit innerhalb der Methode LaravelExcelWriter::_download() möglich ist.

Die Verwendung eines Ereignisses vor dem Senden von Headern würde eine flexible Anpassung der Standardheader nach Bedarf ermöglichen.

Hilfreichster Kommentar

1.3.0 kann ein Array von Headern als zweiten Parameter der Methode export() :

->export('xls', [
     'Set-Cookie'  => 'fileDownload=true; path=/'
]);

Alle 3 Kommentare

1.3.0 kann ein Array von Headern als zweiten Parameter der Methode export() :

->export('xls', [
     'Set-Cookie'  => 'fileDownload=true; path=/'
]);

Wie kann ich das mit Version 3.1 tun?

@andreshg112 Sie können der Klasse use Exportable; Concern hinzufügen, zB

class MyExportClass implements FromView
{

  use Exportable;

}

Dann können Sie in Ihrem Controller die Kopfzeile hinzufügen:

return (new MyExportClass())->download('myexportfile.xlsx', \Maatwebsite\Excel\Excel::XLSX, [
      'X-Vapor-Base64-Encode' => 'True'
    ]);

Die Dokumentation ist hier, ich habe auch ein bisschen gebraucht, um es herauszufinden: https://docs.laravel-excel.com/3.1/exports/exportables.html

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen