MVC中Web API和REST API的区别究竟是什么?

前端之家收集整理的这篇文章主要介绍了MVC中Web API和REST 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)
        {
        }
    }

所以我的问题是Web API和REST API之间的区别是什么?

从rest定义开始,上面的代码基于REST,那么MVC中的普通Web API是什么?我有点困惑,因为有些人说你使用REST api的web api吗?

请提供对两者的更好理解。

解决方法

就像我们这么多人一样,我一直在那里。而且我认为我现在了解基础知识。有很多令人困惑的词汇Web API,REST,RESTful,HTTP,SOAP,WCF,Web服务……我相信这个话题还有很多。但我只会提到你问的问题。

休息

它不是API,它只是一个架构概念。请注意,它也不是框架。你可以找到更多细节here

REST风格

我没有在任何地方遇到任何RESTful的正式定义。但我相信,如果它们符合REST规范,它只是API的另一个流行语。

Web API

它在用于编写HTTP API的开源框架中。这些API可以是RESTful也可以不是。我们编写的大多数HTTP API都不是RESTful。该框架实现了HTTP协议规范,因此您可以使用URI,请求/响应头,缓存,版本控制以及各种内容格式等概念。

请注意,我没有故意使用术语Web服务,因为它是一个令人困惑的术语。有些人使用它作为通用概念,我更喜欢称它们为HTTP API。有一个名为“Web服务”的实际框架,如Web API。但它实现了另一个名为SOAP的协议。

猜你在找的HTML相关文章