1 什什么是ASP.NET Web API 路由

ASP.NET Web路由其实就是一个抽象的消息处理管道,ASP.NET Web API的路由机制不同于ASP.NET的路由机制,但是与ASP.NET的路由有着相似的一套设计。

2 ASP.NET Web API 请求和响应的相关对象

ASP.NET Web API的请求是通过HtppRequestMessage作为管道来处理请求的消息,通过HtppReponseMessage作为管道来处理响应的消息。也就是ASP.NET Web API处理用户请求和响应用户的核心的对象是HttpRequestMessage和HtppReponseMessage,而ASP.NET用于处理用户请求和响应的是HttpRequest和HttpReponse。

2.1 HttpRequestMessage 对象

在一个完整的HTTP请求/响应报文中是由起始行、报头集合、主体内容三部分构成。

在Http的起始行包含了HTTP方法、请求URI、HTTP版本,而起始行在HttpRequestMessage的属性是Method、RequestUri和Vesion。

HTTP                HttpRequestMessage
 HTTP方法 Method
请求URI RequestUri
HTTP版本 Vesion

在请求报文的报头集合、主体内容在HttpRequestMessage的体现分别是Headers、Content。

注:如果我们没有对Http方法进行设置,HttpRequestMessage默认是采用GET

2.2 HtppReponseMessage 对象

在ASP.NET Web API中通过HtppReponseMessage类型来表示响应消息,可以在该类型中获取HTTP响应报文的相关信息。HTTP响应报文的起始行中包含HTTP版本、响应状态码和状态文字描述相关信息,在HtppReponseMessage对应着分别是Version、StatuCode和ReasonPhrase属性。

HTTP                HtppReponseMessage
HTTP版本 Version
响应状态码 StatuCode
状态文字描述 ReasonPhrase

在响应报文的报头集合、主体内容在HtppReponseMessage的体现分别是Headers、Content。

2.3 HttpContent 对象

在HttpRequestMessage和HtppReponseMessage都又一个类型为HttpContent的属性Content,用于表示请求报文和响应报头的主体内容。在HttpContent中有个只读属性Headers可以获取一个HttpContentHeaders,可以利用它获取请求/相应报文的主体内容的相关报头。

注:HttpContentHeaders表示的报头有很多,具体可以查看MSDN文档的 HttpContentHeaders Class

转载于:https://www.cnblogs.com/NikoMao/p/5954693.html

ASP.NET Web API 路由 (上)相关推荐

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

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

  2. Asp.net Web Api 路由 和 异常处理

    一.路由: 新建一个ASP.NET MVC4 Web Application项目之后,我们会发现在网站根目录下有个App_Start文件夹.找到下面的RouteConfig.cs文件,如下: publ ...

  3. ASP.NET Web API路由规则(二)

    默认的规则 在ASP.NET MVC4中 global.asax.cs代码中并无注册默认路由规则的代码 代码如下: public class WebApiApplication : System.We ...

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

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

  5. ASP.NET Web API Selfhost宿主环境中管道、路由

    ASP.NET Web API Selfhost宿主环境中管道.路由 前言 前面的几个篇幅对Web API中的路由和管道进行了简单的介绍并没有详细的去说明一些什么,然而ASP.NET Web API这 ...

  6. 在Windows上安装HTTPIE(人类HTTP)-非常适合ASP.NET Web API和RESTful JSON服务

    Recently in on a post on the RESTful ASP.NET Web API framework I used curl to post JSON to an HTTP e ...

  7. 购物车Demo,前端使用AngularJS,后端使用ASP.NET Web API(2)--前端,以及前后端Session

    原文:购物车Demo,前端使用AngularJS,后端使用ASP.NET Web API(2)--前端,以及前后端Session chsakell分享了前端使用AngularJS,后端使用ASP.NE ...

  8. ASP.NET Web API的Controller是如何被创建的?

    Web API调用请求的目标是定义在某个HttpController类型中的某个Action方法,所以消息处理管道最终需要激活目标HttpController对象.调用请求的URI会携带目标HttpC ...

  9. 《ASP.NET Web API 2框架揭秘》

    <ASP.NET Web API 2框架揭秘> 基本信息 作者: 蒋金楠 出版社:电子工业出版社 ISBN:9787121235368 上架时间:2014-7-5 出版日期:2014 年7 ...

  10. ASP.NET Web API 2 入门教程

    译者:jiankunking 出处:http://blog.csdn.net/jiankunking 源码下载 HTTP不仅提供web页面服务,在构建公开服务和数据api方面,它也是一个强大的平台.H ...

最新文章

  1. grid中的绑定 格式化
  2. UVa 10820 (打表、欧拉函数) Send a Table
  3. 安装python模块时,遇到error: Unable to find vcvarsall.bat
  4. UVA 220 Othello
  5. 【学术相关】毕业论文速成指南来了!
  6. boost::ratio_negate相关的测试程序
  7. The Illustrated Transformer (Transformer可视化解读自译笔记)
  8. 2017.3.12 每日小记
  9. RestClient使用
  10. NetFPGA平台介绍
  11. 各种关于函数的定义01(高数)
  12. 【云计算学习教程】软件(程序)是什么?
  13. OpenGauss数据库的安装与运行
  14. 从特斯拉AI团队学到的九条方法论
  15. lol怎么显示连接服务器失败怎么回事,lol为什么有网无法连接服务器失败
  16. Excel数据可视化——使用图标集显示数据的意义
  17. [React Error]: Target container is not a DOM element
  18. 蚂蚁金服入职考试_阿里巴巴蚂蚁金服面试通过,多久给offer?
  19. 对接微信二维码支付流程
  20. 本周 GitHub 速览:自动化当道,破密、爬虫各凭本事

热门文章

  1. 6 云计算系列之Nova安装与配置
  2. mysql unrecognized service问题解决
  3. SpringSecurity半成品笔记
  4. [saiku] JCR在saiku中的运用原理
  5. xampp修改mysql的默认空密码
  6. WordPress缓存插件WP-Super-Cache安装使用
  7. Intent的一些简单用法
  8. [转]struct 和typedef struct什么区别
  9. HDU_2082 找单词 (生成函数)
  10. windows下Tomcat安装及Eclipse配置教程