Fork me on GitHub

Dashboard一般设计思路

一、RESTful API 是什么?

  • 用自己的话来表达就是,遵守一定的规则来给接口url取名字的方法论
  • 所有的东西都是资源,用户是资源、支付是资源、课程是资源……
  • 每个资源有4种不同的动作:增、删、改、查
  • 以一个课程来举例
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
增 post 
增加一个: /courses 创建的内容JSON

删 delete
删除一个:/courses/:id

改 patch
修改一个:/courses/:id 改的内容JSON

查 get
查所有:/courses
查一个:/courses/:id
注意查又分两种情况返回:html,json,由前端发的请求Accept来确定具体返回哪种类型
直接从浏览器输入url,会自动以text/html的类型返回
从请求中获取,需要设置请求头accept类型

二、前后端JSON如何设计?

  • 前端给后端传上面?后端给前端传上面?
  • 举例登录功能
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
前端给后端传:
{
手机号,
密码
}

后端成功,返回前端:
{
状态码200,
data:{用户的信息数据}
}

后端失败、返回前端:
{
状态码4XX,
errors:[中文原因1、中文原因2……]
}
  • 举例展示多个资源
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
前端根据接口查询


后端成功,返回前端:
{
状态码200,
data:[{渲染的数据}、{渲染的数据}……],
pager:{每页几个、当前页、总共多少页、总共多少个数据}
}

后端失败、返回前端:
{
状态码4XX,
errors:[中文原因1、中文原因2……]
}

三、前端权限如何设计?

  • 什么是权限?你能做什么?你不能做什么?
  • 角色和权限需要区分开,权限用二进制数组来对应,然后一一映射
  • 前端界面的权限思路:
    • 显示不同的菜单(前端可以直接固定写不同角色能看什么菜单)
    • 分div,封装全局API
    • 后端返回权限状态码

注意:写一个全局的can(userRole,basic)返回一个Boolean。所有的复杂的判断在can里面实现,那么html的展示逻辑就很简单了。

------ 本文结束啦,感谢您的阅读------
余咖咖 wechat
欢迎您关注我的个人微信公众号~
坚持原创技术分享,您的支持将鼓励我继续创作!