Part5-前后端登录注册实现
一、前端登录注册界面布局
借助Antd的 表单组件(登录框) 可以快速实现。
二、注册接口开发
1、JWT简介
Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准。
注册必然要产生token,这是用户的登录凭证。JWT的官网地址:https://jwt.io/。
一个JWT实际上就是一个字符串,它由三部分组成,头部、载荷与签名。
2、Koa中生成token
a. 安装
$ npm i jsonwebtoken -Sb. 生成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.ts 与 request/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'
最后更新于
这有帮助吗?