Express.js 路由

收藏656

阅读7465

更新时间2025-08-28

Express.js路由定义了Express应用程序如何使用特定的URI(或path)和特定的HTTP请求方法(GET,POST等)来响应客户端请求 。

为了理解Express.js路由的需求,让我们深入一个示例。

创建一个基本的Express应用程序,如下所示。

app.js

var express = require('express') 
var app = express() 
 
// 启动服务器
var server = app.listen(8000, function(){ 
    console.log('Listening on port 8000...') 
 })

我们要做的是,实例化一个快速应用程序,在端口8000上启动它。现在,打开浏览器,并访问URL http://localhost:8000/。

Express.js无法获取/

响应是它无法获取资源“ /”。

即使控制台中没有错误。该应用程序运行良好。

Express.js应用正在运行    

这是为什么?因为在Express应用程序中,我们启动了服务器,但是没有定义当请求到达服务器时必须发生的情况。

这就是Express.js路由的体现。以下是一条简单的快速路线。

 
 app.get('/', function (req, res) { 
    res.send('This is a basic Example for Express.js by nhooo') 
 })

这条路线定义什么?当您收到GET请求网址为的请求时,此路由定义在函数内部执行语句/。

在下面的屏幕快照中是一条路由,其中针对具有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方法。

相关

视频

RELATED VIDEOS

更多

免费

Web前端开发极速入门
初级 Web前端开发极速入门

219920次学习

收藏

免费

前端入门_HTML5
初级 前端入门_HTML5

616946次学习

收藏

免费

30分钟学会网站布局
初级 30分钟学会网站布局

238440次学习

收藏

免费

CSS视频教程-玉女心经版
初级 CSS视频教程-玉女心经版

393054次学习

收藏

免费

独孤九贱(1)_HTML5视频教程

免费

独孤九贱(6)_jQuery视频教程

免费

独孤九贱(7)_Bootstrap视频教程

免费

独孤九贱(2)_CSS视频教程
初级 独孤九贱(2)_CSS视频教程

229605次学习

收藏

精选课程

更多
前端入门_HTML5
前端入门_HTML5

共29课时

61.7万人学习

CSS视频教程-玉女心经版
CSS视频教程-玉女心经版

共25课时

39.3万人学习

JavaScript极速入门_玉女心经系列
JavaScript极速入门_玉女心经系列

共43课时

71万人学习

独孤九贱(1)_HTML5视频教程
独孤九贱(1)_HTML5视频教程

共25课时

61.6万人学习

独孤九贱(2)_CSS视频教程
独孤九贱(2)_CSS视频教程

共22课时

23万人学习

独孤九贱(3)_JavaScript视频教程
独孤九贱(3)_JavaScript视频教程

共28课时

33.9万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时

125万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号