URL 设计规范

  • 字母全部用小写,尽量短
  • 使用 kebab-case(短横线分割),谷歌官方建议,有利于 SEO
  • 使用 / 标识资源层级
  • 在查询字符串或资源字段中使用 camelCase
  • 不应包含任何用户相关的信息,避免复制 url 时绑定错误的个人信息
  • 避免太多参数,目录层次尽量少
  • 总是使用复数名词来命名指向一个集合的 url:/users
  • 在源代码中,将复数转换为具有列表后缀名描述的变量和属性
  • 坚持这样一个概念:始终以集合名起始并以标识符结束,如 /students/123
  • URLs 里面请尽量少用动词
  • 为非资源型请求使用动词,这种情况下,API 并不需要返回任何资源,而是去执行一个操作并返回执行结果,这些不是 CRUD 操作
  • 请求体或响应类型如果是 JSON,那么请遵循 camelCase 规范为 JSON 属性命名来保持一致性
  • 即使资源类似于对象实例或数据库记录的单一概念,也不应该将 table_name 用作资源名称或将 column_name 作为资源属性
  • 只有在您的 URL 上面命名资源时才使用名词,不要尝试解释其功能
  • 对于嵌套资源,请在 URL 中把他们的关系表现出来,如 /schools/2/students/31,表示得到 2 学校的 31 学生的信息