Ich habe Probleme beim Erstellen eines Download-Links zum Herunterladen von Dateien über eine Mobile App aus dem Laravel Storage-Ordner.
Ich habe etwas wie $link = Response::Download(storage_path()./file/example.png)
gemacht, aber ohne Erfolg.
Ich habe die Datei in den öffentlichen Ordner verschoben und http://domain.com/file/example.png
und asset('file/example.png')
verwendet, aber ohne Erfolg.
Ich bekomme 404 NOT FOUND ERROR
Wie löse ich das?
Sehen Sie sich die Dokumentation von Laravel Helpers an: Ссылка
Wenn Sie eine Verknüpfung zu Ihrem Asset haben möchten, können Sie das folgendermaßen tun:
%Vor%Bearbeiten
Wenn die obige Methode für Sie nicht funktioniert, können Sie eine ziemlich einfache Download-Route in app / routes.php implementieren, die wie folgt aussieht:
Beachten Sie, dass in diesem Beispiel davon ausgegangen wird, dass sich Ihre Dateien in app / storage / file / Speicherort
befinden %Vor%Verwendung: Ссылка
Dies wird nach einer Datei suchen in: app / storage / file / example.png (falls vorhanden, sende die Datei an den Browser / Client, sonst wird eine Fehlermeldung angezeigt).
P.S. '[A-Za-z0-9\-\_\.]+
Dieser reguläre Ausdruck stellt sicher, dass Benutzer nur Dateien mit Namen anfordern können, die A-Z
oder a-z
(Buchstaben), 0-9
(Zahlen), -
oder _
oder .
(Symbole) enthalten. Alles andere wird verworfen / ignoriert. Dies ist eine Sicherheitsmaßnahme ....