rest - 为什么 https 方法放置和删除
问题描述
我不是 REST 架构方面的专家,我正在阅读教程。我对理解 http 方法的作用感到困惑。我所了解的是,有四种 HTTP 方法 GET、POST、PUT、DELETE 根据教程它执行以下工作。
GET->只读操作POST->创建资源PUT->更新资源DELETE->删除资源
我在这里的疑问是,我可以通过注释 @POST 而不是 @DELETE 来编写删除资源的代码吗?我没有在我的应用程序中使用@PUT 和@DELETE,而是只使用@POST 来执行此操作?使用@PUT 和@DELETE 真的是强制性的吗?如果我不使用它会有什么后果?
@POST
@Path("/{empNo}")
@Produces({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })
public void deleteEmployee(@PathParam("empNo") String empNo) {
EmployeeDAO.deleteEmployee(empNo);
}
解决方案
在 Roy Fielding 关于 REST 的论文中,他只提到了统一接口。
这样您就可以根据需要定义统一接口。
POST->删除资源没问题
POST->更新资源没问题。
但是如果你想让你的 api 更清晰,并遵循 HTTP 标准。
-POST->创建新对象
-PUT->更新对象
-DELETE-> 删除对象
推荐阅读
- python - CS50 PSET6 DNA 不匹配使用正则表达式计算 STR
- python - 如何将张量保存到 TFRecord?
- python - 每天使用python自动创建一个文件夹
- python - 如何将列数据制作成列标题并在其中添加其他列数据
- django-rest-framework - Azure Active Directory、Django Rest 社交身份验证
- python - 如何使用opencv在pyqt5中同时在不同窗口中运行一个网络摄像头
- unit-testing - 我如何模拟/伪造从另一个服务继承的服务中的方法并返回一个 Observable?
- javascript - 如何完成滚动类更改?
- keras - 使用提前停止 - gridsearchcv - kerasregressor
- c# - C# JSON 西班牙语是 UTF8 但德语是 UTF7 加载