我使用 springboot 创建了一个 REST Web 服务。它有用户对以下网址的回应
/users => get the users in system.(GET)
/adduser => Post a new user.(POST)
/addFriend/{friendID} => this method is to add the friendID into the current logged-in friend(the user resource has friend list) now my doubt its Its a POST request of a GET request. Currently GET method has solved my problem. But I am not sure about the correct method which is right one logically.
否,Restful API 以资源为目标,不包含 URI 中的操作。例:
获取/用户
=> 获取用户列表
获取/用户/:用户ID
=> 通过用户ID获取用户信息
发布/用户
=> 创建新用户
删除/用户/:用户ID
=> 通过用户 ID 删除用户
发布/用户/:用户ID/朋友
=>建立友谊,您可以发送其他用户的正文包含ID。(JSON/XML(
GET/users/:userid/friends/:friendid
=> 检查两个用户之间的朋友可能会返回友谊ID或真/假
这是一个 POST 请求。
根据维基百科:
GET 方法请求指定资源的表示形式。使用 GET 的请求应仅检索数据,不应产生其他影响。
和
POST 方法请求服务器接受请求中包含的实体作为 URI 标识的 Web 资源的新从属。例如,已发布的数据可能是现有资源的注释;公告板、新闻组、邮件列表或评论线程的消息;将 Web 表单提交到数据处理过程后产生的数据块;或要添加到数据库的项。