【发布时间】:2021-09-09 03:17:47
【问题描述】:
我正在阅读有关 ASP.NET Web API 和 REST 架构的信息。我知道使用 ASP.NET Web API 我们可以创建 RESTful 或非 RESTful 服务。
根据“统一接口”的 REST 约束,我们需要实现 HTTP 动词,如 GET、POST、PUT、DELETE 等。我知道如果我们正在实现 HTTP 动词,那么我们需要使用HTTP协议与服务通信。
我从How to Implement GET Method in Web API 教程中了解了实现GET,并了解了我们如何使用HttpResponseMessage 返回HTTP 响应。
但后来我碰巧遇到了一些我们没有实现任何HttpResponseMessage 而是简单的GET、POST、PUT 和DELETE 的文章。见,Creating Web API Application 和 How to Create Web API in ASP.Net MVC。
我的问题:
-
在没有
HttpResponseMessage的情况下实现 HTTP 动词有什么用?在 ASP.NET Web Api 中实现GET、POST、PUT和DELETE的全部目的是我们可以创建 HTTP 响应(如我链接的第二个和第三个教程)。 -
如果我们不使用
HttpResponseMessage,但仍然实现GET、POST、PUT和DELETE,那么我们可以说它是一个RESTFul服务吗? -
如果我们不使用 HTTP 动词实现
HttpResponseMessage,那么响应将如何在 RESTFul 服务中发回?
【问题讨论】:
-
附加阅读的小注释:仅仅因为 API 通过 HTTP does not mean it is RESTful 进行通信。
-
无论你是否使用HttpResponseMessage,结果仍然是通过HTTP传输的。
标签: rest asp.net-web-api