Part5-前后端登录注册实现

一、前端登录注册界面布局

借助Antd的 表单组件(登录框) 可以快速实现。

二、注册接口开发

1、JWT简介

Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准。

注册必然要产生token,这是用户的登录凭证。JWT的官网地址:https://jwt.io/

一个JWT实际上就是一个字符串,它由三部分组成,头部载荷签名

2、Koa中生成token

a. 安装

$ npm i jsonwebtoken -S

b. 生成token

const jwt = require('jsonwebtoken');

// 根据username和password生成token
let token=jwt.sign(
    {username,password},    // 携带信息
    'zhaowenxian',          // 秘钥
    {expiresIn:'1h'}        // 有效期:1h一小时
)

expiresIn:以秒表示或描述时间跨度zeit/ms的字符串。如60,"2 days","10h","7d",Expiration time,过期时间

更多字段可参考:https://blog.csdn.net/weixin_34314962/article/details/89057225

3、鉴权

已经产生了token,前端调用接口时传过来的token,就需要后端进行比较,我们称之为 鉴权

三、Koa获取请求体

Koa获取请求体的方式是使用第三方插件:

然后在 app.js 中直接引入并调用:

四、Axios+TS的请求封装

前端React管理系统项目使用Axios进行请求,封装的过程结合ts使用。

src 下创建 request/api.tsrequest/request.ts

1、封装request

2、导出api

api.ts 中:

3、调用api

五、接口文档

小幺鸡(docway)平台:http://xiaoyaoji.cn/

六、React Redux管理用户信息

首先,安装redux与react-redux:

1、reducer

在 src 下新建 store/reducer.ts

2、store

在 src 下新建 store/index.ts

3、调用

组件中使用connect进行调用:

七、React环境变量配置

React的环境变量配置可以通过.env文件进行配置,建议使用插件配合。

1、cross-env插件

然后打开 config/env.js,搜索 getClientEnvironment ,在其中添加:

然后在项目根目录新建两个文件:

.env 开发环境:

.env.production 生产环境:

2、项目运行、测试与打包

当你运行 npm start 时,它总是等于 'development' ,

当你运行 npm test 它总是等于 'test' ,

当你运行 npm run build 来生成一个生产 bundle(包) 时,它总是等于 'production'

最后更新于

这有帮助吗?