Le téléchargement de fichiers est probablement une opération essentielle dans chaque projet. Aujourd'hui, nous utilisons nodejs pour implémenter un module de téléchargement de fichiers.
1. Module
npm i multiparty
npm i express
2.
Nous mettons le code dans le fichier ( upload.js
) Le code dans le fichier est le suivant :
// Télécharger le module const multiparty = require('multiparty') //Module d'opération de fichier const fs = require('fs') //Importer le framework express const express = require('express') //Routage const routeur = express.Router() // Interface de téléchargement du fichier router.post('/upload/file', (req, res) => { /* Génère un objet multipartite et configure le chemin cible de téléchargement */ let form = new multiparty.Form(); //Définir le codage form.encoding = 'utf-8'; //Définit le chemin de stockage du fichier, en utilisant le fichier actuellement édité comme chemin relatif form.uploadDir = './public'; // analyse, analyseur de formulaire // champs : données de formulaire ordinaires // fichiers : informations sur le fichier téléchargé form.parse(req, function (err, field, files) { essayer { //Le fichier est fichiers.file[0] laissez upfile = fichiers.file[0] // Nommez le fichier et modifiez le chemin dans le fichier upfile, sinon le nom du fichier sera généré aléatoirement let newpath = form.uploadDir + '/' + upfile.originalFilename //Nom du fichier// Renommer fs.renameSync(upfile.path , nouveau chemin); //Renvoyer les informations, ((upfile.size)/1048576).toFixed(2) Convertir le fichier des unités B en M et arrondir à deux décimales res.send({. code:200, msg: 'Fichier réussi', nom_fichier :upfile.originalFilename, file_size:((upfile.size)/1048576).toFixed(2)+'M' }) } attraper { // Message console.log(err) dans des circonstances anormales res.envoyer({ code:401, msg:'Erreur de fichier', more_msg : erreur }) } }) })// Exportez ce module pour l'appeler dans le fichier de fonction principal module.exports =
fichier
router3.main.js
// Introduisez le module express const express = require('express') // Instancier express const application = express() // Mappage de dossiers app.use('/static',express.static('public')) // Interface de téléchargement du fichier const upload=require('./router/upload') app.use (télécharger) // Service d'écoute app.listen('3333', '0.0.0.0', (res) => { console.log('Serveur exécutant http://127.0.0.1:3333') })
4. Exemple
faire tomber