Mit der Popularisierung mobiler Internet- und Webanwendungen werden Bilder als wichtiger Träger für die Informationsübertragung in verschiedenen Anwendungsszenarien häufig verwendet und deren Hochladen und Anzeigen sind eine häufige Anforderung. In der Webentwicklung bietet Node.js als leichte serverseitige Laufumgebung eine schnelle und effiziente Entwicklungsmethode. In diesem Artikel werden das Hochladen von Bildern und die Konfiguration des Root-Pfads in Node.js vorgestellt.
1. Node.js-Bild-Upload
Um das Bild-Upload in Node.js zu implementieren, ist es sehr praktisch, dieses Modul zu verwenden , und konfigurieren Sie es dann entsprechend im Code Can.
Installieren Sie das Express-Datei-Upload-Modul:
npm install --save express-fileupload
Dann verweisen Sie auf das Modul im Code:
const fileUpload = require('express-fileupload');
Verwenden Sie das Modul und konfigurieren Sie den Upload-Pfad, die Grenzgröße usw.:
app.use(fileUpload({ limits: { fileSize: 50 * 1024 * 1024 }, //限制文件大小 useTempFiles: true, tempFileDir: '/tmp/', uploadTimeout: 120000, //上传时间 abortOnLimit:true, createParentPath:true //创建父级路径 }));
Im obigen Codelimits
begrenzt den Upload. Die maximale Größe einer Datei beträgt 50 MB.useTempFiles
bedeutet die Verwendung eines temporären Ordners zum Speichern hochgeladener Dateien.tempFileDir
bedeutet die Angabe eines temporären Ordnerpfads code>uploadTimeout bedeutet die Upload-Zeit,abortOnLimit
gibt an, ob der Upload abgebrochen werden soll, wenn die Dateigrößenbeschränkung überschritten wird, undcreateParentPath
gibt an, ob ein übergeordneter Pfad erstellt werden soll.limits
限制了上传文件的最大大小为 50MB,useTempFiles
表示使用临时文件夹存储上传的文件,tempFileDir
表示指定临时文件夹路径,uploadTimeout
表示上传时间,abortOnLimit
表示超过文件大小限制时是否终止上传,createParentPath
表示是否创建父级路径。
在路由中处理上传请求,使用moveTo
方法将上传的文件移动到指定的目录,完成文件上传操作。
app.post('/upload', (req, res) => { if (!req.files) { return res.status(400).send('No files were uploaded.'); //上传失败返回错误提示 } const file = req.files.file; //获取文件对象 file.mv('/path/to/upload/folder/' + file.name, (err) => { //将文件移动到指定的目录并重新命名 if (err) { return res.status(500).send(err); } res.send('File uploaded!'); }); });
以上代码中,file
对象表示上传的文件,使用mv
方法将文件移动到指定目录,并重新命名该文件。
二、Node.js 根路径配置
在 Node.js 中,可以使用全局变量__dirname
获取当前执行脚本所在目录的完整路径,一般使用该变量作为根路径,处理文件时可以使用路径拼接方式来写相对路径。
例如,在 Express 框架中配置静态文件目录,通常会使用根路径作为静态文件目录的前缀,以避免路径错误。
app.use(express.static(__dirname + '/public'));
以上代码中,公共文件的目录为public
,使用__dirname
拼接该目录的相对路径,可以确保应用启动时读取的是正确的路径。
三、Node.js 图片上传根路径的写法
在实现 Node.js 图片上传时,通常需要指定上传图片的存储路径。为避免出现路径错误,可以使用根路径加相对路径的方式进行路径拼接。
例如,配置图片上传路径为根路径下的uploads
文件夹,可以写如下代码:
const UPLOAD_PATH = __dirname + '/uploads'; file.mv(UPLOAD_PATH + '/' + file.name, (err) => { if (err) { return res.status(500).send(err); } res.send('File uploaded!'); });
以上代码中,UPLOAD_PATH
moveTo
in das angegebene Verzeichnis und schließen Sie den Datei-Upload-Vorgang ab.
rrreee
Im obigen Code stellt das Objektfile
die hochgeladene Datei dar. Verwenden Sie die Methode
mv
, um die Datei in das angegebene Verzeichnis zu verschieben und umzubenennen.
2. Node.js-StammpfadkonfigurationIn Node.js können Sie die globale Variable
__dirname
verwenden, um den vollständigen Pfad des Verzeichnisses zu erhalten, in dem sich das aktuell ausgeführte Skript befindet Variable wird als Stammpfad zum Verarbeiten von Dateien verwendet. Sie können Pfadspleißen verwenden, um relative Pfade zu schreiben. Beim Konfigurieren eines statischen Dateiverzeichnisses im Express-Framework wird normalerweise der Stammpfad als Präfix des statischen Dateiverzeichnisses verwendet, um Pfadfehler zu vermeiden. rrreeeIm obigen Code ist das Verzeichnis der öffentlichen Datei
public
. Durch die Verwendung von
__dirname
zum Zusammenfügen des relativen Pfads des Verzeichnisses kann sichergestellt werden, dass der richtige Pfad gelesen wird Die Anwendung startet. 3. So schreiben Sie den Stammpfad des Node.js-Bild-UploadsBei der Implementierung des Node.js-Bild-Uploads müssen Sie normalerweise den Speicherpfad des hochgeladenen Bildes angeben. Um Pfadfehler zu vermeiden, können Sie zum Pfadspleißen den Stammpfad plus den relativen Pfad verwenden. Um beispielsweise den Bild-Upload-Pfad zum Ordner
uploads
unter dem Stammpfad zu konfigurieren, können Sie den folgenden Code schreiben: rrreeeIm obigen Code
UPLOAD_PATH
stellt den hochgeladenen Bildspeicherpfad dar. Verwenden Sie zum Spleißen den Stammpfad plus den relativen Pfad, um eine korrekte Pfadspleißung zu erreichen. ZusammenfassungDas Hochladen von Bildern und die Konfiguration des Root-Pfads sind beide sehr wichtig bei der Entwicklung von Node.js. Durch die richtige Konfiguration und Implementierung können Probleme wie Pfadfehler und Upload-Fehler während der Entwicklung reduziert werden. In diesem Artikel werden die Schritte zur Verwendung des Express-Fileupload-Moduls zum Implementieren des Bild-Uploads vorgestellt und erläutert, wie der Root-Pfad in Node.js korrekt konfiguriert wird. Ich wünsche den Lesern, dass sie es erfolgreich in der tatsächlichen Entwicklung einsetzen können.
Das obige ist der detaillierte Inhalt vonSo schreiben Sie den Stammpfad des NodeJS-Bild-Uploads. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!