什么是Web API

HTTP不仅仅服务于Web Pages。他也是一个创建展示服务和数据的API的强大平台。HTTP是简单的,灵活的,无处不在的。你能够想象到几乎任何的平台都会有HTTP服务库。HTTP服务可以涉及到范围广泛的客户端,包括浏览器,各种移动设备和传统桌面应用程序。而Web API是提供了一套RestfulAPI的开发框架,它提供了较为完整的http语义支持。

Web API 与MVC 的区别

    1.使用区别

           MVC主要用于Web站点开发,它在后端实现了一套完整的MVC开发框架,能提供方便的页面开发,提供给了后端Html构成,用户可以方便的开发出带页面的站点

Web API主要用于做开放API接口,更抽象,更不注重VIew生成

2.自身实现区别

两种框架主要使在Asp.Net的基础上进行改造,主要是对HttpModule和HttpHandler做了扩展。

MVC像是在一层上建立了第二层,引伸出更大的路由机制,实现了诸如MvcHandlerControllerFactory这种消息处理和后台控制器方法选择机制。而Web API除了扩展前者外,另外写出了一套独立的,独立于Asp.Net的消息处理管道,就像借鉴了原来的房子模型,重新设计出了另一套别墅,这也很好的解释了为什么Web API可以寄宿在不同的宿主上(宿主本质就是利用一个具体的一个用程序为Web API提供给一个可运行的环境,并解决请求的接收和响应的回复),如 Web Host,Self Host方式,这与WCF相似。而MVC只能寄宿与IIS上(不考虑.net core),就像WebForm的寄宿方式。何况它们两者虽然都有Controller和Action,但是请求的实现和响应的回复机制也是不同的,比如Web API处理消息的两个核心类是HttpRequestMessage和HttpResponseMessage。这两种框架最多只能说模式上相似,实现还有有很大区别。

Asp.Net Web API(一)相关推荐

  1. (四)Asp.net web api中的坑-【api的返回值】

    (四)Asp.net web api中的坑-[api的返回值] 原文:(四)Asp.net web api中的坑-[api的返回值] void无返回值 IHttpActionResult HttpRe ...

  2. WCF 和 ASP.NET Web API

    地址:https://docs.microsoft.com/zh-cn/dotnet/framework/wcf/wcf-and-aspnet-web-api WCF 是 Microsoft 为生成面 ...

  3. ASP.NET Web API自身对CORS的支持:从实例开始

    在<通过扩展让ASP.NET Web API支持W3C的CORS规范>中我们通过自定义的HttpMessageHandler为ASP.NET Web API赋予了跨域资源共享的能力,具体来 ...

  4. ASP.NET Web API实践系列06, 在ASP.NET MVC 4 基础上增加使用ASP.NET WEB API

    本篇尝试在现有的ASP.NET MVC 4 项目上增加使用ASP.NET Web API. 新建项目,选择"ASP.NET MVC 4 Web应用程序". 选择"基本&q ...

  5. [转]Web API Introduction to OData Services using ASP.NET Web API

    本文转自:http://mahedee.net/tag/web-api/ What is OData? OData Stands for Open Data Protocol. It is a dat ...

  6. ASP.NET Web API 路由对象介绍

    前言 在ASP.NET.ASP.NET MVC和ASP.NET Web API这些框架中都会发现有路由的身影,它们的原理都差不多,只不过在不同的环境下作了一些微小的修改,这也是根据每个框架的特性来制定 ...

  7. A simple Test Client built on top of ASP.NET Web API Help Page

    Step 1: Install the Test Client package Install the WebApiTestClient package from the NuGet Package ...

  8. ASP.NET Web API 过滤器创建、执行过程(二)

    ASP.NET Web API 过滤器创建.执行过程(二) 前言 前面一篇中讲解了过滤器执行之前的创建,通过实现IFilterProvider注册到当前的HttpConfiguration里的服务容器 ...

  9. ASP.NET Web API WebHost宿主环境中管道、路由

    ASP.NET Web API WebHost宿主环境中管道.路由 前言 上篇中说到ASP.NET Web API框架在SelfHost环境中管道.路由的一个形态,本篇就来说明一下在WebHost环境 ...

  10. 推荐升级ASP.NET Web API 2

    ASP.NET Web API 使用很长时间了,期间也碰到不少问题,升级到WebAPI2后这些问题都解决了,稳定性方面也提升不少,所以推荐使用.碰到的问题是下面的2类: 1.multipart/for ...

最新文章

  1. JDK 14 里的调试神器了解一下?
  2. afn text html,关于AFN请求返回的数据格式
  3. 【数据竞赛】CV赛题总结:人民币面值与编码识别
  4. Linux系统下不同机器之间拷贝文件的方法
  5. 第一篇:centos7下svn的安装与卸载
  6. java day17 【线程、同步】
  7. .NET Framework中的配置文件(config)
  8. 获得当月时间chuo_擅用GTD时间管理法,远离焦虑情绪,让你的工作、学习井然有序...
  9. L1-02-yum源的配置(本地源)
  10. 直流有刷电机(可以用L298N来驱动)
  11. 数据、运营相关试题(三)【牛客网:数据运营试题广场】
  12. java根据日期计算农历_Java给定公历日期计算相应农历/阴历日期
  13. 腾讯360再较量  谁是反垄断巨头
  14. 千兆SFP光模块可以在万兆SFP+端口上使用吗?
  15. 最流行的前端框架vue基础
  16. 单身程序狗没有妹子可以炫耀,怎么办?
  17. 安卓:点击空白处隐藏软键盘
  18. Dynamic Topic Models的Python实现
  19. 力扣 1833. 雪糕的最大数量
  20. 判断和循环(实战收尾篇2—猜数字游戏)

热门文章

  1. Beta阶段第1周/共2周 Scrum立会报告+燃尽图 06
  2. 第二次小组实践作业小组每日进度汇报:2017-11-29
  3. echarts x轴坐标文字显示不全
  4. [简单分页]C#+JQUERY+ORACLE分页效果 ----转载
  5. WinForm中ComboBox绑定数据的用法
  6. android usb虚拟串口,USB 虚拟串口简介
  7. enumerable java_ruby中的Enumerable的使用
  8. matlab噪声 方差_产生多种分布的热噪声信号
  9. 配置csrf_Django 启用和禁用CSRF功能
  10. c++ 23种设计模式_如何用一句话总结23种设计模式