十分钟入门express

二进制诗人
• 阅读 4778
  • express的前世今生

    基于 Node.js平台,快速、开放、极简的 web 开发框架。

优点

  • 极简 灵活, express提供一系列强大的特性,帮助你创建各种 Web 和移动设备应用。
  • 性能上 在node之上进行了二次元的操作。 提供了web所需的所有功能。
  • express 拥有强大的中间件,丰富的 HTTP 快捷方法可以进行强大的操作

引用 安装

npm install express-generator -g 
//全局安装 进行引入 
express -e
//默认  安装改为 ejs 的模式 
express myapp  
//创建 myapp文件夹
npm install //安装 依赖
set DEBUG=myapp & npm start  
//运行  文件夹
//然后在浏览器中打开 http://localhost:3000/ 网址就可以看到这个应用了。

app.js详解(如何秒掉代码)

1. 中间件

中间件(Middleware) 是==一个函数==,它可以访问请求对象(request object (req)), 响应对象(response object (res)), 和 web 应用中处于请求-响应循环流程中的中间件,一般被命名为 next 的变量。

  • req请求对象
  • res响应对象
  • exit
应用级中间件
 app.get('/user/:id', function (req, res, next) {
  console.log('ID:', req.params.id);
  next();
}, function (req, res, next) {
  res.send('User Info');
});

// 处理 /user/:id, 打印出用户 id

代码中get也可换成use


路由级中间件

建立的文件夹就是 应用的这个例子
感兴趣的同学可以在网址后边加上/users

下面分析一下文档程序
这个图片来自 官方文档

同样我们的routes中也有一个文档跟着相同 ,其实他就是路由级中间件的应用
再看 这张图片 ----他来自 app.js

···································

  1. var =require ()引用文件
  2. app.use()应用路由中间件使用路由
  3. 值就是为什么在网址后加上/users能出来新的网址的关系
pug 与 ejs
错误处理中间件

十分重要的东东 用来管理错误的 放最后的不必过多在意

app.use(function(err, req, res, next) {
  console.error(err.stack);
  res.status(500).send('Something broke!');
});
第三方中间件
  1. 也就是引用的中间件 不过多解释了 用时再说

API是学习的工具建议大家多看看

http://www.expressjs.com.cn/4...

最后推荐一款进行监控的 工具

PM2 不是2.5 没有升级版要记住

npm install pm2 -g
npm stste ./bin/www --watch
pm2 show 0
pm2 delete 0
点赞
收藏
评论区
推荐文章
blmius blmius
4年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
美凌格栋栋酱 美凌格栋栋酱
7个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
雷厉风行 雷厉风行
2年前
WebStorm 2023 for Mac:智能、高效的前端开发工具,支持多种前端技术 - 前端开发工具,智能,高效
WebStorm2023forMac是一款专业的Web开发工具,由Jetbrains公司开发。它提供了许多强大的功能,适用于多种Web技术,包括HTML、CSS、JavaScript、Node.js等。WebStorm2023forMac是Web开发者的首
Wesley13 Wesley13
3年前
TNW
简介TNW(htts://gitee.com/javen205/TNW):TypeScript(The)Node.js(Next)WeChat微信公众号开发脚手架,支持http模块扩展、支持任何Node.js的服务端框架(Express、NestJS、eggjs等)概述access_token是
Stella981 Stella981
3年前
Express简介
Express是一个基于Node.js平台,快速、开放、极简的web开发框架。它的官网地址:http://expressjs.com,中文网址:http://www.expressjs.com.cn/。本篇主要介绍一下Express项目的搭建。假设我们已经安装好了Node.js,现在创建一个目录作为我们的项目目录,进入这个目录下:$
Stella981 Stella981
3年前
KubeSphere 正式入驻 AWS Quick Start,服务全球用户云原生落地
日前,面向云原生应用的容器平台KubeSphere宣布正式入驻AmazonWebServices(AWS)QuickStart,基于AmazonElasticKubernetesService(AmazonEKS)深度集成,为全球用户提供多集群管理、微服务治理、应用管理等功能,以极简的部署与管理,帮助企业快速落地
Stella981 Stella981
3年前
Express 的使用
以下内容,基于Express4.x版本Node.js的Express_Express_ 估计是那种你第一次接触,就会喜欢上用它的框架。因为它真的非常简单,直接。在当前版本上,一共才这么几个文件:lib/├──application.js├──express.
Stella981 Stella981
3年前
Hello Kraken.js!
<p&160;</p<h2前言</h2<pkraken.js由paypal公司开源的一个用于快速开发基于Express.js框架应用的快速开发工具,因为kraken并没有在Express.js基础上更改多少东西,只是在原来的express基础上补充了一些约定开发的规则,让开发根据便捷.</p<h2你好,世界!</h2<p
Stella981 Stella981
3年前
Nodejs开发指南的几处更新
《node.js开发指南》上面讲的代码案例,现在再来操作的话,肯定是运行不成功的。express现在已经是3.x版本,相比书上用到的2.x版本,改动还是蛮大的。使用expressprojectName创建项目时,express的t参数已经失效,需要手动修改package.json和app.js文件来指定模块引擎,默认的为jade;如果需要换成
Stella981 Stella981
3年前
Koa2实战练手(一)
Koa(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Flink.jianshu.com%3Ft%3Dhttp%3A%2F%2Fkoajs.com%2F)是下一代的Node.js的Web框架。由Express(https://www.oschina.net/action/