roh*_*ngh 38 c# api rest model-view-controller asp.net-web-api
我对REST API有一点了解.据我所知,它用于处理HTTP服务(GET POST PUT DELETE).
当我添加一个webapi控制器时,它为我提供了一些基本方法,如:
public class Default1Controller : ApiController
{
// GET api/default1
public IEnumerable<string> Get()
{
return new string[] { "value1", "value2" };
}
// GET api/default1/5
public string Get(int id)
{
return "value";
}
// POST api/default1
public void Post([FromBody]string value)
{
}
// PUT api/default1/5
public void Put(int id, [FromBody]string value)
{
}
// DELETE api/default1/5
public void Delete(int id)
{
}
}
Run Code Online (Sandbox Code Playgroud)
所以我的问题是Web API和REST API之间的区别是什么?
从rest定义开始,上面的代码基于REST,那么MVC中的普通Web API是什么?我有点困惑,因为有些人说你使用REST api的web api吗?
请提供对两者的更好理解.
Raj*_*jiv 58
我和我们这么多人一直在那里.有很多令人困惑的词,比如Web API,REST,RESTful,HTTP,SOAP,WCF,Web Services ......以及围绕这个主题的更多内容.但我将简要解释你所问过的那些.
它既不是API也不是框架.这只是一个建筑概念.你可以在这里找到更多细节.
我没有在任何地方遇到RESTful的任何正式定义.我相信它只是API的另一个流行语,可以说它们是否符合REST规范.
编辑:还有另一个趋势开源倡议OpenAPI规范(OAS)(以前称为Swagger)来标准化REST API.
它在用于编写HTTP API的开源框架中.这些API可以是RESTful也可以不是.我们编写的大多数HTTP API都不是RESTful.该框架实现了HTTP协议规范,因此您可以使用URI,请求/响应头,缓存,版本控制以及各种内容格式等概念.
注意:我没有故意使用术语Web服务,因为它是一个令人困惑的术语.有些人使用它作为通用概念,我更喜欢称它们为HTTP API.微软有一个名为"Web服务"的实际框架,如Web API.但它实现了另一个名为SOAP的协议.
Cha*_*box 10
ASP.NET Web API是一个框架,可以轻松构建可覆盖广泛客户端的HTTP服务,包括浏览器和移动设备.ASP.NET Web API是在.NET Framework上构建RESTful应用程序的理想平台.
休息
当您通过Internet公开公共API以处理数据的CRUD操作时,REST的最佳位置.REST专注于通过单个一致的接口访问命名资源.
肥皂
SOAP带来了它自己的协议,并专注于将应用程序逻辑(而不是数据)作为服务公开.SOAP公开了操作.SOAP专注于访问命名操作,每个操作都通过不同的接口实现一些业务逻辑.
虽然SOAP通常被称为"Web服务",但这是用词不当.SOAP几乎没有与Web有关.REST提供基于URI和HTTP的真正"Web服务".
参考:http://spf13.com/post/soap-vs-rest
最后:他们可以指的是REST与RPC见:http: //encosia.com/rest-vs-rpc-in-asp-net-web-api-who-cares-it-does-both /
| 归档时间: |
|
| 查看次数: |
92218 次 |
| 最近记录: |