Question

Je retourne un flux dans une réponse mise en l'en-tête de content-type appropriée. Le comportement que je suis à la recherche est la suivante:

  • Si le navigateur est capable de rendre le contenu du type de contenu donné alors il doit l'afficher dans la fenêtre du navigateur.

  • Si le navigateur ne sait pas comment rendre le contenu, il devrait afficher « Enregistrer sous » boîte de dialogue où le nom du fichier doit être celui fourni dans la réponse.

Le problème est que si je mets l'en-tête Content-Disposition avec:

  

"fixation; filename =" myfile.txt ""

le navigateur affiche toujours la boîte de dialogue « Enregistrer sous ».

Si je ne mets pas Content-Disposition, le nom du fichier utilisé dans « Enregistrer sous » boîte de dialogue est celui de l'URL qui ne fonctionne pas dans mon cas.

J'ai aussi tenté de mettre Content-Disposition à inline, mais le résultat est le même.

Était-ce utile?

La solution

La manière correcte pourrait être:

Content-Disposition: inline; filename="myfile.txt"

Autres conseils

Je ne sais pas si cela est possible par défaut. Pour des raisons de sécurité, les navigateurs n'envoient pas tous les types de contenu qu'ils peuvent gérer, mais quelques-uns Accept-Encoding, ce qui ne contribue pas beaucoup dans votre scénario.

Peut-être que vous pouvez demander à votre utilisateur ce qu'ils préfèrent et stocker ces informations dans leur profil.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top