我已经阅读过asp.net Web API,但我不确定我是否理解Web API工具背后的概念。现在让我说我已经定义了一个从APIController派生的Controller,我可以使用URL调用这个Controller,然后Controller将JSON结果返回给客户端,,,
这是否意味着我的asp.net MVC Web应用程序中的APIController是作为RESTfull Web服务公开的? BR
答案 0 :(得分:2)
您的API是否被视为“RESTfull”是一个设计问题,而不是使用哪个库/项目模板的问题。请记住,API的重点是暴露一个简单的编程接口 - 在幕后实现它的方式在这方面并不重要。
然而,由于其内置的设计原则,WebAPI项目模板确实非常适合设计restfull服务。
REST API背后的基本思想是:
与使用基本MVC控制器/动作设计REST API没什么不同,WebAPI只是让它更容易。
这是一个不错的视频系列:http://www.asp.net/web-api/videos/getting-started/your-first-web-api
答案 1 :(得分:1)
我只想添加到Anders
REST代表Representational state transfer
所以基本上在建筑学中你选择了resource
http://www.example.com/USER
并指示服务器对资源执行操作。由发送的HTTP
请求类型指定
通过什么web api开箱即用
POST
- 添加新用户
PUT
- 修改现有用户信息
GET
- 只需检索用户信息
DELETE
- 删除用户信息
这是REST
正在发送或接收的数据类型(JSON
或XML
)。不是休息规格的一部分。你也可以决定使用asp.net web api数据返回并以什么格式发送
您的请求的Accept
和Content-Type
标题
答案 2 :(得分:0)
Apixtroller与mvc Controller完全不同,它来自Wcf WebApi,但与开发人员的经典asp.net控制器非常相似。重点是加快提供休息服务。
所以你只需要再分配一个路径,制作一些控制器,而不是使用querystring和body json(默认)并自动转换为Poco类,并返回另一个自动序列化为jsion的Poco类。