Votre instruction pour définir les en-têtes de réponse est légèrement malformée:
$this->getResponse()
->setHeader('Content-Disposition', 'inline; filename=result.pdf')
->setHeader('Content-type', 'application/x-pdf');
Le ci-dessus devraient travailler - s'il vous plaît noter la différence dans le Content-Disposition
- entête. Par ailleurs ... Si vous voulez forcer une boîte de téléchargement (au lieu de charger le document dans le navigateur), vous devez utiliser le Content-Disposition
attachment
.
$this->getResponse()
->setHeader('Content-Disposition', 'attachment; filename=result.pdf')
->setHeader('Content-type', 'application/x-pdf');
Selon le navigateur, il est possible que vous devez également définir le Content-Length
ou modifier le Content-type
à une combinaison (plusieurs en-têtes) d'un ou plusieurs des application/force-download
, application/octet-stream
et/ou application/download
. Et comme je l'ai écrit dans le commentaire parfois les en-têtes de mise en cache peuvent interférer avec votre téléchargement. Vérifiez pour voir quels en-têtes de cache sont envoyés.
Peut-être que les en-têtes sont déjà envoyés? – Pawka
Le type Mime correct pour PDF est application/pdf. –