Nodejs envoyer un fichier de réponse
Expressjs cadre a un sendfile() la méthode. Comment puis-je le faire sans l'aide de l'ensemble du cadre. Je suis l'aide d'un noeud-native-zip pour créer une archive et je veux l'envoyer à l'utilisateur.
Vous devez vous connecter pour publier un commentaire.
Voici un exemple de programme qui va envoyer myfile.mp3 en streaming à partir du disque (qui est, il n'a pas lu tout le fichier en mémoire avant de l'envoyer le fichier). Le serveur écoute sur le port 2000.
[Mise à jour] Comme mentionné par @Réplique dans les commentaires,
util.pump
a disparu et a été remplacée par une méthode sur le Flux prototype appelépipe
; le code ci-dessous reflète cela.Prises de http://elegantcode.com/2011/04/06/taking-baby-steps-with-node-js-pumping-data-between-streams/
net::ERR_CONTENT_LENGTH_MISMATCH
erreur.elasticsearch
et encore écrire dans un fichier téléchargeable par la modification de votre code?Vous avez besoin d'utiliser le volet pour envoyer le fichier (archive) dans une réponse, qu'est-ce que vous avez plus à utiliser Content-type approprié dans votre en-tête de réponse.
Il est un exemple de fonction qui le font:
"application/octet-stream" est défini comme "des données binaires arbitraires" dans la RFC 2046, le but de ce type de contenu est enregistré sur le disque, c'est ce que vous avez vraiment besoin.
"filename=[nom de fichier]" spécifie le nom de fichier qui sera téléchargé.
Pour plus d'informations, veuillez consulter cette stackoverflow sujet.