nodejs express 框架使用

1. 准备环境

        Nodejs 版本 v18.12.1,  yarn 版本 1.22.21

2. 初始化项目

创建项目目录 express_demo01,进入目录,执行命令

npm init -y

生成 package.json 文件

 

圈起来的那一行修改为上图所示。使用 npm run dev 即可启动项目。

安装express 和 body-parser 的依赖,执行如下命令:

yarn add express 

yarn add body-parser

 安装完成,项目目录结构如下:

 3. 编写代码

在app.js 文件中写逻辑代码

const express = require('express');
const bodyParser = require('body-parser');

const app = express();
app.use(bodyParser.json());

// 配置跨域
app.all('*', (req, res, next) => {
    res.header('Access-Control-Allow-Origin', '*');
    res.header('Access-Control-Allow-Methods', 'GET,POST');
    res.header('Access-Control-Allow-Headers', 'Content-Type,Authorization');
    next();
});

//get 请求
app.get('/getList', (req, res) => {
    console.log(req.query);
    console.log(req.query.name);
    console.log(req.query['pwd']);
    res.status(200).json({
        msg: 'ok',
        data: {
            token: 'abcde'
        }
    });
})

// post请求
app.post('/login', (req, res) => {
    console.log(req.body);
    const {username, password} = req.body;
    res.status(200).json({
        msg: 'ok',
        data: {
            userInfo: {
                username: username,
                password: password
            },
            token: 'abcde'
        }
    })
})

// 监听8080端口
app.listen(8080, () => {
    console.log("ok");
})

编写完成,保存,命令行执行 npm run dev 即可启动服务。

1)get 请求获取参数

调用 req.query方法,返回请求参数对象。

 

使用 req.query.xxx, xxx为参数名。即可获取请求参数。

2)post 请求获取参数

调用 req.body 方法,返回请求参数对象。

结构对应的参数值:

const {username, password} = req.body;

3)获取请求头参数

postman中在请求头中设置参数

获取请求头参数 Authorization

const authorization = req.headers["authorization "];

const authorization = req.get('authorization'); 

两种方式均可,注意获取时要使用小写字母。


4. 模块优化

将接口(路由)的逻辑代码分离到独立的文件中 。

新建目录routes,在routes目录中新建 index.js 文件。文件内容如下

module.exports = function (app) {

    // post请求
    app.post('/login', (req, res) => {
        console.log(req.body);
        const {username, password} = req.body;
        res.status(200).json({
            msg: 'ok',
            data: {
                userInfo: {
                    username: username,
                    password: password
                },
                token: 'abcde'
            }
        })
    })

    //get 请求
    app.get('/getList', (req, res) => {
        console.log(req.query);
        console.log(req.query.name);
        console.log(req.query['pwd']);
        res.status(200).json({
            msg: 'ok',
            data: {
                token: 'abcde'
            }
        });
    })

}

然后再在 app.js 文件中引入 routes\index.js 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值