为禁止访问正确建模RESTful资源

为禁止访问正确建模RESTful资源,rest,Rest,我有多条路线: /projects /projects/{id} /countries?project={id} /categories?project={id} 我怀疑这样做是否正确,我想听听第二种意见 项目参数是必须的 根据项目 如果有人无法访问它,他们现在可以得到403 这感觉很不可靠,因为我知道在RESTful世界中,用户是基于资源而不是查询参数被授予访问权限的 用以下方式对其进行建模是否更合适 /projects /projects/{id} /projects/{id}/cou

我有多条路线:

/projects
/projects/{id}
/countries?project={id}
/categories?project={id}
我怀疑这样做是否正确,我想听听第二种意见

  • 项目
    参数是必须的
  • 根据
    项目
  • 如果有人无法访问它,他们现在可以得到403
这感觉很不可靠,因为我知道在RESTful世界中,用户是基于资源而不是查询参数被授予访问权限的

用以下方式对其进行建模是否更合适

/projects
/projects/{id}
/projects/{id}/countries
/projects/{id}/categories

根据您的评论,考虑到国家/地区和类别资源需要一个项目资源才能存在,因此可以采用第二种方法,将属于项目的所有内容嵌套在
/projects/{id}
下:

/projects
/projects/{id}
/projects/{id}/countries
/projects/{id}/categories

根据您的评论,考虑到国家/地区和类别资源需要一个项目资源才能存在,因此可以采用第二种方法,将属于项目的所有内容嵌套在
/projects/{id}
下:

/projects
/projects/{id}
/projects/{id}/countries
/projects/{id}/categories

国家/地区和类别资源是否依赖于项目资源存在?@cassiomolin在此上下文中-是
/countries
如果没有
项目,作为一种资源对本商业案例来说是没有意义的。国家和类别资源是否依赖于项目资源存在?@cassiomolin在此上下文中-是
/countries
作为一种资源,如果没有
项目
,对本商业案例来说是没有意义的。这也将更容易实现。这也将更容易实现。