web-dev-qa-db-fra.com

Téléchargez un fichier avec la méthode PUT / POST sur POSTMAN

J'essaie de télécharger un fichier avec POSTMAN sur cette URL

http://localhost:3000/bucket/test/files/

Et devrait obtenir le résultat dans mon contrôleur là-bas:

    put(request, response, args) {
    //HERE IN THE REQUEST.BODY 
    console.log(request.body)

    let fileManager = request.modules.VMFile;
    let mimeTypes = ['image/jpeg', 'image/png', 'image/gif', 'image/x-icon', '  video/mpeg', 'text/html', 'video/x-msvideo', 'application/msword', 'application/pdf', 'application/vnd.ms-PowerPoint', 'application/x-rar-compressed'];
    let maxFileSize = 4 * 1024 * 1024;

    fileManager.initUpload(mimeTypes, maxFileSize);

    fileManager.receive((files) => {

        fileManager.forEachFileContent(files, (file, content) => {

            minioClient.putObject(request.body.bucket, request.body.name, content, file.size, file.mimetype, function (err, etag) {
                response.setData("File uploaded").apply();
                return console.log(err, etag)
            })

        });
        fileManager.clearFilesFromTmp(files);
    });
}

Dans POSTMAN, j'ai obtenu ceci:

postman

Avec rien sur les en-têtes mais je ne pouvais que PUT (ou POST, j'ai essayé de changer mon itinéraire avec POST mais même problème) le nom et le champ de bucket .. Je n'ai rien eu sur mon champ de fichiers ..

Une idée s'il vous plait?

7
Cupkek05

Lorsque vous utilisez Postman, en particulier lorsque vous testez le téléchargement de fichiers, assurez-vous que,

  1. dans en-têtes:
    • Le champ Content-type A été défini comme multipart/form-data Dans les en-têtes.
  2. dans Corps:
    • L'option form-data Doit rester par défaut.
    • Choisissez l'option File au lieu de text dans la liste déroulante à droite.
    • Tapez File dans la zone de texte où l'espace réservé est key.

J'espère que cela t'aides!

18
David R

Vous le faites peut-être bien, mais parfois POSTMAN ne fonctionne pas bien. J'ai écrit une API pour accepter à la fois le texte et le fichier.
En invoquant le service de Postman. 1. J'ai défini Content-Type comme "application/json" et j'accepte comme "application/json".
2. Dans le corps, je passe le texte et le fichier Cela ne fonctionnait pas, j'ai essayé plusieurs fois. J'ai fermé le poste et mon ordinateur portable.

Je me suis réveillé le lendemain matin et j'ai réussi. Ci-dessous est l'image de la demande de travail.

enter image description here

1
user2203676