J'ai créé un simple serveur HTTP qui permet aux utilisateurs de télécharger des fichiers. Mais cela ne semble pas fonctionner pour les fichiers mp3. Le type de contenu est actuellement "application/misc"
. Afin de le faire fonctionner avec des fichiers mp3, j'ai essayé "application/mp3"
, "application/data"
et "application/mpeg"
.
Quel serait le bon type de contenu pour le téléchargement de fichiers mp3 ou audio, et manque-t-il d'autres en-têtes?
EDIT: le fichier devrait démarrer automatiquement le téléchargement plutôt que d'inviter l'utilisateur à l'enregistrer quelque part.
Essayez "Content-Type: audio/mpeg"
Mise à jour
Pour encourager le navigateur à télécharger le mp3 plutôt que le streaming, faites
Content-Disposition: filename = "music.mp3" '
.mp3 audio/mpeg3
.mp3 audio/x-mpeg-3
.mp3 video/mpeg
.mp3 video/x-mpeg
Voir ceci lien pour plus d'informations.
Utiliser Content-Disposition: attachment ... force une boîte de téléchargement à apparaître au lieu d'avoir à faire un clic droit -> enregistrer la cible sous.
Après beaucoup de recherches, j'ai trouvé quelques ressources (certaines sur SO) qui ont conduit à cette solution. C'est la solution la plus compatible avec tous les appareils et résout beaucoup de problèmes, en particulier avec les appareils Android Android (beaucoup de problèmes avec eux apparemment).
Contenu-Disposition: pièce jointe; filename = " my_mp3_filename .MP"
Prenez note de l'extension majuscule. C'est important.
essayez ci-dessous le type de contenu, cela a fonctionné pour moi.
"audio/mpeg3;audio/x-mpeg-3;video/mpeg;video/x-mpeg;text/xml"
En utilisant Content-Type "application/force-download"
a fonctionné pour moi.
définir "content-disposition" comme "pièce jointe