English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Express.js-Routen definieren, wie die Express-Anwendung spezifische URI (oderpath) und einem spezifischen HTTP-Anfrageverfahren (GET, POST usw.) auf die Anfragen des Clients reagieren。
Um die Anforderungen an die Express.js-Routen zu verstehen, lassen Sie uns in ein Beispiel eintauchen.
Erstellen Sie ein grundlegendes Express-Anwendung wie folgt.
app.js
var express = require('express') var app = express() // 启动服务器 var server = app.listen(8000, function(){ console.log('Listening on port 8000...') )
Wir müssen eine schnelle Anwendung instantiieren, auf dem Port8000 darauf starten. Jetzt öffnen Sie den Browser und besuchen Sie die URL http://localhost:8000/。
Die Antwort ist, dass sie die Ressourcen nicht abrufen kann “ /”。
Selbst wenn im Konsolenfenster keine Fehler auftreten, läuft die Anwendung gut.
Warum? Weil wir in der Express-Anwendung den Server gestartet haben, aber nicht definiert haben, was passiert, wenn eine Anfrage auf den Server eintrifft.
Das ist die Darstellung der Express.js-Routen. Hier ist ein einfaches schnelles Route.
app.get('/', function(req, res) { res.send('Dies ist ein grundlegendes Beispiel für Express.js von w3codebox') )
Was definiert diese Route? Wenn Sie eine GET-Anfrage mit der URL erhalten, definiert diese Route den Ausführungsbefehl intern in der Funktion./。
在下面的屏幕快照中是一条路由,其中针对具有request url的GET请求执行功能/hello/。
让我们在app.js中定义一些路由并启动服务器。
app.js
var express = require('express') var app = express() // 为GET请求和请求URL路径/'或根执行的路由 app.get('/', function(req, res) { res.send('Home.') ) // 为GET请求和请求url路径/ hello /'执行的路由 app.get('/hello/', function(req, res) { res.send('Hello page.') ) // 为GET请求和请求url路径/ bye /'执行的路由 app.get('/bye/', function(req, res) { res.send('Bye page.') ) // 启动服务器 var server = app.listen(8000, function(){ console.log('Listening on port 8000...') )
启动快速申请。
现在点击浏览器中的网址。默认情况下,浏览器发送GET请求。
带有URL路径http:// localhost:8000 /的GET请求
带有URL路径http:// localhost:8000 / hello /的GET请求
带有URL路径http:// localhost:8000 / bye /的GET请求
您可以在路线中提供一个或多个功能。每个功能都称为中间件。
app.js
var express = require('express') var app = express() // 具有多种功能的快速路线 app.get('/hello/', function(req, res, next) { res.write('Hello page. ') next() }, function(req, res, next){ res.write('Hello again. ') res.end() ) // 启动服务器 var server = app.listen(8000, function(){ console.log('Listening on port 8000...') )
在浏览器中,输出为
您也可以分别为模块化定义这些功能,如下所示。
var express = require('express') var app = express() function hello(req, res, next) { res.write('Hello page. ') next() } function helloagain(req, res, next){ res.write('Hello again. ') res.end() } // 具有多种功能的快速路线 app.get('/hello/', hello, helloagain) // 启动服务器 var server = app.listen(8000, function(){ console.log('Listening on port 8000...') )
在此Express.js教程中,我们了解了Express.js路由是什么,如何定义Express.js路由以及如何使用这些路由针对不同的URL路径提供不同种类的HTTP方法。