【Node.js】Express框架入门

前言

一个express web框架的学习笔记。

入门

  • 创建一个 package.json 文件
    npm init
    
  • 安装express
    npm i express
    
  • 使用express
    app.js
    //导入express
    const express = require('express')
    //2.创建web服务器
    const app = express()
    //3.添加路由
    app.get('/', (req, res) => {
      res.send('Hello World!')
    })
    //4.启动web服务器
    app.listen(3000, ()=>
        console.log('express server running at http://127.0.0.1:3000')
    )
    
  • 运行
    node app.js
    

运行后访问 http://127.0.0.1:3000 就可以看到 Hello World!

监听请求
app.get('/', (req, res) => {
    //通过req.query可以获取到客户端发送过来的查询参数
    //访问:http://127.0.0.1:3000/?name=zhan&age=20
    //注意:默认情况下,req.query是一个空对象
    console.log(req.query)
    res.send(req.query)
})
静态资源处理
  • 调用express.static()方法,快速的对外提供静态资源
    //访问:http://127.0.0.1:3000/index.html
    app.use(express.static('./public'))
    
  • 加路径前缀
    //访问:http://127.0.0.1:3000/public/index.html
    app.use('/public', express.static('./public'))
    

模块化路由

  • 编写路由模块
    router.js
    //1.导入express
    const express = require('express')
    //2.创建路由对象
    const router = express.Router()
    //3.挂载具体的路由
    router.get('/user/list',(req,res) => {
        res.send('Get user list.')
    })
    router.post('/user/add',(req,res)=> {
        res.send('Add new user.')
    })
    //4.向外导出路由对象
    module.exports = router
    
  • 导入 router.js
    const express = require('express')
    const app = express()
    
    //1.导入路由模块
    const router = require('./router')
    //2.注册路由模块
    //app.use(router)
    app.use('/api', router) //加路由前缀
    //app.use()函数的作用,就是来注册全局中间件
    
    app.listen(3000, () => {
        console.log('http://127.0.0.1:3000')
    })
    

跨域

  • 安装
    npm i cors
    
  • 使用
    const cors = require('cors')       //跨域模块
    app.use(cors())
    
    //设置访问域名限制
    var corsOptions = {
    	origin: ['http://localhost:9000'],
    	optionsSuccessStatus: 200
    	// credentials: true
    }
    

参考

Express 中文网
node js解决 CORS 跨域问题(完整实例)
Node 跨域 CORS 模块

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

翻过月亮.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值