名词约定
Dashboard : 控制台 / 控制面板
角色role : 普通用户 / vip用户 / 超级管理员 / ...
权限 premission : 能做什么 , 不能做什么
后台/后端 back-end : PHP / Node.js / Java
前端 front-end : 浏览器 / JS / TS
调用接口 url : 前后端之间
单页 VS 多页
SPA : Single Page Application
MPA: Multiple Page Application
SPA :
Vue-router
/home --> index.html
/cart --> index.html
/user --> index.html
MPA :
/home --> home.html
/cart --> cart.html
/user --> user.html
REST ful 接口
- 解决
url
起名字的问题
资源:
登录 : get session / new 输入utl ,发送get请求,得到页面
post session 点击登录 json
登出 : session / sestroy
注册 : user / create
资源 :
增 -- post courses
删 -- delete courses/:id
改 -- patch 改一个 courses/:id
查 -- 查所有 courses ==> 接受 html / json
-- 差一个 courses/:id
前端权限设计
角色 : 不同的角色有不同的权限
权限
界面上权限:
1. 分菜单, 不能看的菜单, 跳转
2. 分 div, 不同的角色看到不同的 div : 逻辑简单, if else ,但过多if
3. 看 状态码(后台)
- 403
- 401 没有登录
JSON 设计
登录:
- 传给后端
{username: 'xxx', password: 'yyy'}
- 后端返回
成功 : status 200
{
data / user: {
id : ''.
name: ''
}
}
失败 : status 4xx
{
errors: {
name: ['Not found', 'error2'],
email: ['error1', 'error2']
}
}
网友评论