J'ai un serveur HTTP (newLISP fonctionnant sous Linux) qui exécute mes scripts CGI. Il fonctionne sur ma machine Linux.Problème de téléchargement de fichiers binaires
J'ai un problème étrange avec le téléchargement de fichiers en utilisant la méthode POST. Mon script CGI est simple: il lit tout depuis stdin et l'enregistre dans un fichier. J'ai écrit le script à des fins de débogage: je voulais savoir, ce qui est lu exactement. Lorsque je télécharge un fichier texte, tout va bien. Je veux dire que je reçois quelque chose comme ça:
-----------------------------18218802734725416881815749595 Content-Disposition: form-data; name="uploaded_data"; filename="post.gif" Content-Type: image/gif (and here's the content of the text file) -----------------------------18218802734725416881815749595 Content-Disposition: form-data; name="text_field_name" text field value -----------------------------18218802734725416881815749595 Content-Disposition: form-data; name="submit" Upload -----------------------------18218802734725416881815749595--
Et c'est exactement ce que je devrais, selon la RFC 1867 (fichier à base de formulaires Upload en HTML). (Oui, j'ai renommé ce fichier texte en "post.gif".)
Le problème est, je reçois quelque chose de vraiment étrange, quand j'essaye de télécharger un fichier binaire. Par exemple, quand je télécharge une image gif, je reçois ceci:
-----------------------------208529943213031756281593958364 Content-Disposition: form-data; name="uploaded_data"; filename="polsl.gif" Content-Type: image/gif GIF89a_
Quelle peut être la cause de ce comportement étrange?