RESTful API设计最佳实践

jfr*_*rey 7 api rest

我目前正在为我的项目编写API层,并且正在努力为以下场景找出一个好的设计方法:

  1. 所有用户都有一个书籍列表
  2. 每个列表都可以通过ID访问
  3. 用户可以随意添加和删除书籍

目前,我不确定哪种方法最好:

1) PUT - /api/list/{listID}/{bookID} - Add book to specified list
   DELETE - /api/list/{listID}/{bookID} - Remove book from specified list
2) PUT - /api/list/{listID} - Send XML data to server that contains bookID and action
   <list_payload>
       <action>{delete|add}</action>
       <bookID>{bookID}</bookID>
   </list_payload>
Run Code Online (Sandbox Code Playgroud)

任何见解将不胜感激.

Dny*_*hal 21

我想是这样的

1)POST - /api/lists/{listID}/books - Add book to specified list
2)PUT - /api/lists/{listID}/books/{bookID} - Edit book from a specified list
3)DELETE - /api/lists/{listID}/books/{bookID} - delete
Run Code Online (Sandbox Code Playgroud)

列表

POST - /api/lists Add list
PUT - /api/lists/{listID} Edit list
DELETE /api/lists/{listID} Delete list
Run Code Online (Sandbox Code Playgroud)