Knoten-Middleware umfasst: 1. koa-bodyparser; 3. statischer Ressourcenmanager koa-static; 6. koa-cors2 setzt Anforderungsheader und so weiter.
Die Betriebsumgebung dieses Artikels: Windows 7-System, NodeJS-Version 10.16.2, Dell G3-Computer.
Was sind die Node-Middlewares?
Knoten-Middleware-Typ:
Knoten-Middleware ist die Funktion zur Verarbeitung von im Programm gekapselten HTTP-Anfragen. Knoten-Middleware wird in der Pipeline ausgeführt. Middleware sitzt auf dem Client/Server-Betriebssystem und verwaltet Computerressourcen und Netzwerkkommunikation.
Middleware dient dem wichtigsten logischen Geschäft und kann unterteilt werden in: Middleware auf Anwendungsebene, Middleware auf Routing-Ebene, integrierte Middleware, Middleware von Drittanbietern und Middleware auf Fehlerebene.
Häufig verwendete Middleware in Node:
Ich habe während des Lernprozesses von Node viele nützliche Middleware angesammelt. Die meisten dieser Middlewares müssen in Verbindung mit koa
1 verwendet werden. Parameter können nur über ctx.req .on('data',callback) abgerufen werden
Nach der Einführung der Middleware kann nur ctx.request.body die Parameter abrufen. Viel bequemer als das erste.
2. koa-body
Dieses Plug-in wird verwendet, um die in der Anfrage hochgeladenen Dateien und Dateiinformationen wie Bilder und ZIP-Dateien abzurufen .request.files Informationen zur hochgeladenen Datei.
Achtung! ! ! Verwenden Sie nach der Verwendung von koa-body keinen koa-bodyparser. Dies führt dazu, dass der von der Front-End-Post-Anfrage zurückgegebene Statuscode abgebrochen wird Drucken Sie dann die Bildadresse aus und es wird eine lange Zeichenfolge von c://.../name/.png sein. Obwohl lokal darauf zugegriffen werden kann, funktioniert es nicht, wenn es auf dem Server platziert wird.
Durch die Einführung von koa-static können Sie die statische Dateiadresse für einen Ordner im Projektpfad angeben und dann über den von koa überwachten Port unter http://192.168.0.177:3030/name.png
//入口文件 const bodyParser = require('koa-bodyparser'); app.use(bodyParser({//设置可以接收的数据类型 enableTypes:['json', 'form', 'text'] })) async function (ctx) { console.log(ctx.request.body) ctx.req.on('data',(data) => { console.log(JSON.parse(data),'文件') }) }
4. Cors, koa-cors, koa-cors2 setzen Anforderungsheader
Ich verwende diese Middleware grundsätzlich, um domänenübergreifende Informationen zu konfigurieren und Headerinformationen anzufordern
const koaBody = require('koa-body') app.use(koaBody({ multipart: true, formidable: { maxFileSize: 20 * 1024 * 1024 // 设置上传文件大小最大限制,默认2M } }))
Sie können die Parameter selbst festlegen oder direkt anwenden, ohne Parameter festzulegen (cors ()) kann domänenübergreifend sein.
Apropos domänenübergreifend: Lassen Sie mich die domänenübergreifende Einstellungsmethode des nativen Knotens erwähnen (Sie können auch verschiedene Konfigurationen des Anforderungsheaders festlegen).
const koaStatic = require('koa-static') app.use(koaStatic('./public'))//括号中是设置的静态文件路径
Wenn Sie in Zukunft auf nützliche Middleware stoßen, werde ich sie aufzeichnen ! ! !
Empfohlenes Lernen: „
node.js Video-Tutorial“
Das obige ist der detaillierte Inhalt vonWas sind Node-Middlewares?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!