Gibt es eine Magento-Dienstprogrammmethode, mit der ich eine Aktion zum Herunterladen von Inhalten erzwingen kann?
magento2
download-link
Atish Goswami
quelle
quelle
Antworten:
Sie können Ihre Controller-Aktion erstellen, indem Sie sie
\Magento\Backend\App\Action
für das Backend oder\Magento\Framework\App\Action\Action
für das Frontend erweitern.und lass es so aussehen:
quelle
$this->fileFactory->create()
da dies bereits eine Antwortimplementierung ist, die nicht erforderlich ist$resultRaw
Sie können auch einen Pfad zu einer Datei angeben, die heruntergeladen werden soll:
quelle
Basierend auf der Antwort, die Marius gab.
Wenn Sie nicht über die richtigen Berechtigungen verfügen (obwohl hier ein Lesevorgang erforderlich ist, prüft Magento, ob Schreibberechtigungen vorliegen), führt dies zu einem seltsamen Fehler. "Die Seite ist heruntergekommen oder verschoben" oder so etwas.
Es lohnt sich auch, einen kurzen Blick auf die Logik in $ fileFactory-> create () zu werfen.
quelle