restful 如何表达给一个资源添加 tag

我有一个类型为 foo 的资源 bar, 现在想为这个资源添加一个 tag ( Tag 通过 tagID 区分 )。

考虑了以下几种方式

POST /foos/bar/tags?tagID={tagID}
POST /foos/bar/addTag?tagID={tagID}
POST /tags/{tagID}/foos/bar

哪一种比较合理呢?

阅读 3.2k
2 个回答

应该第一种,建议tagid改为body的方式
POST /foos/bars/tags
{

"tagid":"****"

}

1.不知道你描述的tag是不是bar资源的一个字段,如果是
这个直接用update 的格式就行吧
POST /bar/barid?tagID=tagID
2.如果tag也是一个资源,bar资源和tag资源之间有id关系,即一个barid对应多个tag
新增 POST /bar/barid/tag
修改 POST /bar/barid/tag/tagid

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