REST API命名问题请教

雇员类

public User{
    int id;//key
    int code;//员工编号 唯一
    String name;
    ...
}

api

  1. GET /employee/{id} 根据ID获取人员

  2. GET /employee/{code}

如上:code也是唯一的,如果这么命名是会混淆,应该如何命名?

阅读 3.1k
3 个回答

/employee/code/{code}

获取唯一用户是 /employee/{id} 通过这个URL应该获取的就是 user实体对象。
对于实体对象内部的属性:code . 不应该在暴露URL 来获取。

在设计RESTURL 时候的第一个步骤就是资源抽象,要分清楚哪些是资源是可以抽取,并设计唯一URL的。哪些是不能的

RESTful 的资源一般使用复数,code 我觉得作为搜索的条件也是可以的: /employees/search?code=xxx,当然 code 也可以作为 employee 的一个资源来获取和更改,但是通过 code 来查找 employee,应该属于搜索功能。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题