API 命名经验分享

前言

  1. 这是个人摸索并参考前人经验而总结出来的
  2. API命名的规范是简洁,可读,合理
  3. 所以本篇是经验分享,欢迎参考

统一的命名公式

{role?}/object/{id?}/{attribute?}/{action?}

规范

  • 以单词命名

Role

  • 可选
  • 代表当前可访问的角色
  • 身份不符返回401

例子:
用户A的身份是admin, 用户B的身份是user

URL 用户 可访问
admin/products A yes
admin/products B no
user/dashboard A yes
user/dashboard B yes

身份可以是多重的, 作为admin, 也有修改查看个人资料的权限

Object

  • 必填
  • 命名复数如果显示或修改多个同类数据, 如 categories
  • 命名单数如果现实或修改单条数据, 如 category
  • 可以是物体(object), 或类(class)名

Id

  • 值取于数据的primary key 或 unique key
  • 物体是复数的形式下略过
  • 物体是单数的形式下可选

Attribute

  • 可选
  • 物体或类的属性
  • 在显示或修改某类的所有属性时可以略过

例子

  1. admin/category/5/active/update
    以admin的权限, 修改category的active属性
  2. admin/category/5/update
    以admin的权限, 修改category的所有属性

Action

  • 可选
  • 对数据的操作, 一般以动词命名
  • 读操作可以省略不写
操作 解释
new 用于访问添加新数据的表单
create 将数据加入数据库
edit 用于访问修改指定数据的表单
update 修改指定数据
delete 删除数据
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容