美文网首页
Express学习

Express学习

作者: 绝尘kinoko | 来源:发表于2022-01-09 13:48 被阅读0次

新建项目

npx express-generator
或者安装脚手架
npm install -g express-generator
再用express新建项目,参数用-h查看,个人暂不需要
PS:

  1. 如果遇到powerShell无法运行express脚本,用管理员运行powerShell,输入set-ExecutionPolicy RemoteSigned即可修改执行策略。
  2. 建议安装nodemon,可以热更新,启动命令同node
  3. 启动时打印域名,方便ctrl点击打开页面

改端口:

  1. package.json 脚本里设置set PORT 8080
  2. www文件里15行var port = normalizePort(process.env.PORT || '8080');

路由

就是requestUrl,get请求可以在浏览器上输入,post只能用工具或者代码。

  • 最简单的
// app.METHOD
app.get('/', function (req, res) {
  res.send('GET request to the homepage')
})
app.post('/', function (req, res) {
  res.send('POST request to the homepage')
})

其中有个匹配路径文件返回的,没测试成功。

  • 所有类型
// 所有类型的请求,一般不会这么用
app.all('/secret', function (req, res, next) {
  console.log('Accessing the secret section ...')
  next()
})
// 分别处理
app.route('/book')
  .get(function (req, res) {
    res.send('Get a random book')
  })
  .post(function (req, res) {
    res.send('Add a book')
  })
  .put(function (req, res) {
    res.send('Update the book')
  })

中间件

以前看过一张洋葱模型图,以为中间件很复杂,其实想多了,中间件就是一个固定格式的函数,形似:

const middleware = function (req, res, next) {
  doSomething...
  next()
}

越看越像拦截器,可以对请求和返回做处理,目前通过官网了解的就是日志、请求校验。
中间件还可以和路由结合,比如:

app.use('/user/:id', function (req, res, next) {
  console.log('Request Type:', req.method)
  next()
})

如果use的第一个参数不是路由,直接是中间件,那么该中间件作用于所有路由。

其他

代理那个看官网没整明白,看了其他代理中间件的,大概懂一些。
前段时间听了公司大佬(原阿里哥伦布团队)分享的NodeJs实践,用的是egg,总结一下:
目前Node还是做轻量的后端处理,一般只做controller,涉及到具体业务会调用java等后端服务(不确定service层在哪,持久层肯定是不做的),也就是BFF —— Backend For Frontend,这个名词也是第一次接触,相对来说node跟数据库的交互能力还是不强,没有myBatis那样的框架。
最后大佬还鼓励我们造轮子,说写业务没什么进步。


有些知识点穿插在别的文章里了,比如Web Worker、Service Worker。
补充一下连接数据库的,不是express的内容,是mongodb这个包的,比较简单,以MongoDB为例:

  1. npm i mongodb
  2. 连接、查看数据
mongoClient.connect('mongodb://127.0.0.1:27017', (e, db) => {
    db.db(db_name)
        .collection(collection_name)
        .find()
        .toArray((err, res) => {
            console.log(res);
        });
});

操作的就不展开了,命名还是比较清楚的


Db

不行就到类型声明文件里看详细内容。


热更新问题,nodemon启动时会监听不到www文件的变动
解决方案:加后缀名.js,默认监听的文件扩展类型有js,mjs,json,启动参数-e可指定扩展后缀。

相关文章

  • Node.js + Express + MongoDB 实战 T

    常用链接 express 官网 express 官网中文 express github Nodejs学习笔记以及经...

  • express app.js代码解读

    在学习express的过程中,首先使用express 命令生成一个express骨架应用。 express 4.x...

  • Node.js学习express框架

    Node.js框架学习 express.js express.js是什么 Express基于Node.js平台,快...

  • 20160923 学习笔记 express框架

    20160923 学习笔记 express框架 安装 espress express框架文件 相关知识 http:...

  • express初步学习-中间件

    express学习——中间件 Express是什么? Express是一个基于Node.js平台的web应用开发框...

  • 原来你还可以这样改bug

    遇到bug之前 前两天在学习express,因为之前用过express,所以就简单的看了一下express的使用,...

  • Express学习

    使用中间件 Express 应用可使用如下几种中间件:* 应用级中间件* 路由级中间件* 错误处理中间...

  • Express学习

    Express介绍 Express-generator (Express 应用生成器) 通过Express-gen...

  • express学习

    app.js文件: 执行 node app.js 起服务之后,个人理解这边 ** app.use(requestT...

  • express 学习

    express 学习1 安装express 2 在index.js创建app对象 3 app获取get请求 4 a...

网友评论

      本文标题:Express学习

      本文链接:https://www.haomeiwen.com/subject/xyeecrtx.html