一小时:手把手教你入门express【建议收藏】 | 您所在的位置:网站首页 › 快速创建express项目 › 一小时:手把手教你入门express【建议收藏】 |
express
简介
Express 是基于 Node.js 平台,快速、开放、极简的 Web 开发框架。搭建web服务器 Express 的本质:就是一个 npm 上的第三方包,提供了快速创建 Web 服务器的便捷方法。 使用Express开发框架可以非常方便、快速的创建Web网站的服务器或API接口的服务器 官方网址:https://www.expressjs.com.cn/ 简单使用下载安装: npm init -y npm i express -S使用步骤: 导入包 创建服务器 处理请求 监听端口 const express = require('express') const app = express() app.get(路由,回调) // get是请求方法 app.listen(端口号) 路由方法请求方法还支持: get - 查询请求 - 条件在地址栏 post - 新增请求 - 数据在请求主体 put - 修改请求 - 条件在地址栏 - 数据在请求主体 delete - 删除请求 - 条件在地址栏 各个动词方法用来处理对应的请求。不过有一个方法除外: app.all() // 可以用来处理任意请求方式虽然all方法可以处理任意请求,但是尽量少用,甚至尽量不要使用。 使用postman进行调试 路由路径完全匹配 // 匹配根路径的请求 app.get('/', function (req, res) { res.send('root'); }); // 匹配 /about 路径的请求 app.get('/about', function (req, res) { res.send('about'); }); // 匹配 /random.text 路径的请求 app.get('/random.text', function (req, res) { res.send('random.text'); });不完全匹配 // 匹配 acd 和 abcd app.get('/ab?cd', function(req, res) { res.send('ab?cd'); }); // 匹配 abcd、abbcd、abbbcd等 app.get('/ab+cd', function(req, res) { res.send('ab+cd'); }); // 匹配 abcd、abxcd、abRABDOMcd、ab123cd等 app.get('/ab*cd', function(req, res) { res.send('ab*cd'); }); // 匹配 /abe 和 /abcde app.get('/ab(cd)?e', function(req, res) { res.send('ab(cd)?e'); });字符 ?、+、* 和 () 是正则表达式的子集,- 和 . 在基于字符串的路径中按照字面值解释。 正则匹配: // 匹配任何路径中含有 a 的路径: app.get(/a/, function(req, res) { res.send('/a/'); }); // 匹配 butterfly、dragonfly,不匹配 butterflyman、dragonfly man等 app.get(/.*fly$/, function(req, res) { res.send('/.*fly$/'); }); 路由多次处理使用一个回调函数处理路由: app.get('/example/a', function (req, res) { res.send('Hello from A!'); });多次处理: app.get('/example/b', function (req, res, next) { console.log('这处理完之后会交给下一个函数处理'); next(); }, function (req, res) { res.send('Hello from B!'); });使用回调函数数组处理路由: var cb0 = function (req, res, next) { console.log('CB0') next() } var cb1 = function (req, res, next) { console.log('CB1') next() } var cb2 = function (req, res) { res.send('Hello from C!') } app.get('/example/c', [cb0, cb1, cb2])混合使用函数和函数数组处理路由: var cb0 = function (req, res, next) { console.log('CB0') next() } var cb1 = function |
CopyRight 2018-2019 实验室设备网 版权所有 |