web-dev-qa-db-fra.com

Contenu-Disposition: Quelles sont les différences entre "en ligne" et "pièce jointe"?

Quelles sont les différences entre

Response.AddHeader("Content-Disposition", "attachment;filename=somefile.ext")

et

Response.AddHeader("Content-Disposition", "inline;filename=somefile.ext")

Je ne connais pas les différences, car lorsque j'utilise l'un ou l'autre, je reçois toujours une fenêtre Prompt me demandant de télécharger le fichier pour les deux. J'ai lu les spécifications, mais ce n'est pas clair.

231
Cleiton

Parce que lorsque j'utilise l'un ou l'autre, je reçois une fenêtre Prompt me demandant de télécharger le fichier pour les deux.

Ce comportement dépend du navigateur et du fichier que vous essayez de servir. Avec inline, le navigateur essaiera d'ouvrir le fichier dans le navigateur.

Par exemple, si vous avez un fichier PDF et Firefox/Adobe Reader, une disposition en ligne ouvrira le PDF dans Firefox, alors que la pièce jointe le forcera à télécharger.

Si vous envoyez un fichier .Zip, les navigateurs ne pourront pas l'afficher en ligne. Par conséquent, pour les dispositions en ligne et les pièces jointes, le fichier sera téléchargé.

274
jimyi

S'il est en ligne, le navigateur doit essayer de le rendre dans la fenêtre du navigateur. S'il ne le peut pas, il aura recours à un programme externe, en y invitant l'utilisateur.

Avec pièce jointe, il ira immédiatement à l'utilisateur, et n'essaiera pas de le charger dans le navigateur, que ce soit ou non.

29
Cullen Walsh

Il est également intéressant de noter qu'Inline essaiera d'ouvrir les documents Office (xls, doc, etc.) directement à partir du serveur, ce qui pourrait entraîner une invite d'informations d'identification de l'utilisateur.

voir ce lien:

http://forums.asp.net/t/1885657.aspx/1?Access+the+SSRS+Report+in+Excel+format+on+server

quelqu'un a essayé de fournir un rapport Excel à partir de SSRS via ASP.Net -> l'utilisateur était toujours invité à entrer les informations d'identification. Après avoir cliqué sur annuler sur l'invite, il serait ouvert de toute façon ...

Si la disposition du contenu est marquée comme pièce jointe, elle sera automatiquement enregistrée dans le dossier temporaire après avoir cliqué sur Ouvrir, puis ouverte dans Excel à partir de la copie locale.

9
pastrami01