ASP.NET Web API 2框架揭秘

ASP.NET Web API 2框架揭秘

蒋金楠, 著

出版社:电子工业出版社

年代:2014

定价:108.0

书籍简介:

本书以实例演示的方式介绍了很多与ASP.NET Web API相关的最佳实践,同时还提供了一系列实用性的扩展。本书详细讲解了ASP.NET Web API从接收请求到响应回复的整个流程,包括路由、Http Controller的激活、Action方法的选择与执行、参数的绑定与验证、过滤器的执行和安全等相关的机制。除此之外,本书在很多章节还从设计的角度对ASP.NET Web API的架构进行了深入分析,所以可以将本书当作一本架构设计的书来读。

作者介绍:

《ASP.NET Web API 2框架揭秘》以实例演示的方式介绍了很多与ASP.NET Web API 相关的实践,同时还提供了一系列实用性的扩展。《ASP.NET Web API 2框架揭秘》详细讲解了ASP.NET Web API 从接收请求到响应回复的整个流程,包括路由、Http Controller 的激活、Action 方法的选择与执行、参数的绑定与验证、过滤器的执行和安全等相关的机制。   除此之外,《ASP.NET Web API 2框架揭秘》在很多章节还从设计的角度对ASP.NET Web API 的架构进行了深入分析,所以可以将《ASP.NET Web API 2框架揭秘》当作一本架构设计的书来读。   虽然与市面上任何一本相关的书相比,《ASP.NET Web API 2框架揭秘》走得更远并更加近距离地触及到ASP.NET Web API 框架的内核,但是就其内容本身来讲却没有涉及太多"高深莫测"的知识点,所以阅读《ASP.NET Web API 2框架揭秘》不存在太高的门槛。如果你觉得自己对ASP.NET Web API 所知甚少,可以利用《ASP.NET Web API 2框架揭秘》来系统地学习ASP.NET Web API;如果你觉得自己对ASP.NET Web API 足够精通,也一定能够通过阅读《ASP.NET Web API 2框架揭秘》发现自己知识的"盲点"。

书籍目录:

第1章 概述

1.1 何为Web

1.1.1 TCP/IP与HTTP

1.1.2 Web资源

1.1.3 HTTP事务

1.1.4 HTTP报文

1.2 RESTful Web API

1.2.1 为什么叫这个奇怪的名字

1.2.2 RESTful Web API具有怎样的特征

1.3 初识ASP.NET Web API

1.3.1 构建解决方案

1.3.2 定义Web API

1.3.3 以Web Host方式寄宿Web API

1.3.4 以Self Host方式寄宿Web API

1.3.5 利用HttpClient调用Web API

1.3.6 创建一个“联系人管理器”应用

第2章 路由

2.1 ASP.NET路由

2.1.1 请求URL与物理文件的分离

2.1.2 实例演示:通过URL路由实现请求地址与Web页面的映射

2.1.3 ASP.NET路由系统

2.1.4 注册路由映射

2.1.5 根据路由规则生成URL

2.1.6 HttpHandler的动态映射

2.2 ASP.NET Web API路由

2.2.1 请求与响应

2.2.2 ASP.NET Web API路由系统

2.2.3 注册路由映射

2.3 两个路由系统的衔接

2.3.1 HostedHttpRoute与HostedHttpRouteCollection

2.3.2 HttpControllerRouteHandler与HttpControllerHandler

第3章 消息处理管道

3.1 HttpMessageHandler管道

3.1.1 HttpMessageHandler

3.1.2 DelegatingHandler

3.1.3 HttpServer

3.1.4 HttpRoutingDispatcher

3.2 Web Host模式下的消息处理管道

3.2.1 HttpControllerHandler

3.2.2 实例演示:自定义HttpMessageHandler实现HTTP方法重写(S305)

3.3 Self Host模式下的消息处理管道

3.3.1 HttpBinding

3.3.2 HttpSelfHostServer

第4章 HttpController的激活

4.1 HttpController

4.1.1 HttpControllerContext

4.1.2 HttpControllerDescriptor

4.1.3 ApiController

4.2 HttpController是如何被创建的

4.2.1 程序集的解析

4.2.2 HttpController类型的解析

4.2.3 HttpController的选择

4.2.4 HttpController的创建

4.2.5 HttpController的激活与释放

4.3 IoC的应用

4.3.1 利用Unity来认识IoC

4.3.2 基于IoC的HttpControllerActivator

4.3.3 基于IoC的DependencyResolver

第5章 Action的选择

5.1 HttpActionDescriptor

5.1.1 ReflectedHttpActionDescriptor

5.1.2 ActionNameAttribute

5.1.3 方法名决定HTTP方法

5.1.4 ActionHttpMethodProvider

5.1.5 针对特性的缓存

5.2 HttpParameterDescriptor

5.2.1 ReflectedHttpParameterDescriptor

5.2.2 实例演示:解析Action方法参数描述信息

5.3 HttpActionSelector

5.3.1 ApiControllerActionSelector

5.3.2 有效的Action方法

5.3.3 目标Action方法的选择

第6章 特性路由

6.1 特性路由注册

6.1.1 HttpRouteInfoProvider特性

6.1.2 基本路由映射

6.1.3 让URL模板能够尽可能反映资源的层次结构

6.1.4 为路由变量设置约束

6.1.5 通配符路由变量

6.1.6 缺省路由变量

6.1.7 设置URI前缀

6.2 约束表达式的解析

6.2.1 RangeRouteConstraint

6.2.2 InlineConstraintResolver

6.2.3 自定义约束

6.3 路由解析

6.3.1 RouteCollectionRoute

6.3.2 实例演示:查看特性路由注册生成的RouteCollectionRoute对象

6.3.3 子路由对象的创建

6.3.4 HttpRouteData的生成

第7章 Model绑定(上篇)

7.1 Model绑定解决怎样的问题

7.1.1 基于HttpRouteData的参数绑定

7.1.2 基于查询字符串的参数绑定

7.2 Model元数据的解析

7.2.1 Model元数据的层次化结构

7.2.2 ModelMetadata

7.2.3 ModelMetadataProvider

7.3 ValueProvider

7.3.1 ValueProviderResult

7.3.2 NameValuePairsValueProvider

7.3.3 RouteDataValueProvider与QueryStringValueProvider

7.3.4 CompositeValueProvider

7.4 ValueProviderFactory

7.4.1 RouteDataValueProviderFactory与QueryStringValueProviderFactory

7.4.2 CompositeValueProviderFactory

7.4.3 ValueProviderFactory的注册

7.4.4 自定义ValueProviderFactory

第8章 Model绑定(下篇)

8.1 ModelBinder

8.1.1 ModelBindingContext

8.1.2 去除前缀后的二次绑定

8.1.3 CompositeModelBinder

8.2 ModelBinderProvider

8.2.1 CompositeModelBinderProvider

8.2.2 ModelBinderAttribute

8.2.3 Model绑定的流程

8.3 针对不同目标类型的Model绑定

8.3.1 简单类型

8.3.2 复杂类型

8.3.3 集合

8.3.4 数组

8.3.5 字典

8.3.6 最后一个ModelBinder

8.4 ModelState

8.4.1 ApiController的ModelState

8.4.2 实例演示:获取Model绑定过程中由ValueProvider提供的数据(S808)

第9章 参数的绑定

9.1 参数绑定系统全景展示

9.1.1 HttpParameterBinding

9.1.2 ActionValueBinder

9.2 5个原生的HttpParameterBinding

9.2.1 ModelBinderParameterBinding

9.2.2 FormatterParameterBinding

9.2.3 HttpRequestParameterBinding

9.2.4 CancellationTokenParameterBinding

9.2.5 ErrorParameterBinding

9.3 HttpParameterBinding的创建策略

9.3.1 ParameterBindingAttribute特性

9.3.2 注册参数绑定规则

9.3.3 HttpParameterBinding的创建策略

第10章 参数的验证

10.1 几种参数验证方式

10.1.1 手工验证绑定的参数

10.1.2 使用ValidationAttribute特性

10.1.3 创建自我验证数据类型

10.2 以ModelValidator为核心的参数验证系统

10.2.1 DataAnnotationsModelValidator

10.2.2 RequiredMemberModelValidator

10.2.3 ValidatableObjectAdapter

10.2.4 ErrorModelValidator

10.3 基于数据注解特性的参数验证

10.3.1 ValidationAttribute特性

10.3.2 DataAnnotationsModelValidator

10.3.3 DataAnnotationsModelValidatorProvider

10.4 参数验证流程

10.4.1 ModelValidationNode

10.4.2 “验证树”是如何被建立起来的

10.4.3 “必需”数据成员的验证

10.4.4 BodyModelValidator

第11章 Action的执行

11.1 Action方法的执行

11.1.1 HttpActionInvoker

11.1.2 ActionExecutor

11.2 内容协商

11.2.1 ContentNegotiator

11.2.2 MediaTypeFormatter是如何被筛选出来的

11.2.3 如何确定响应字符集

11.3 HttpActionResult

11.3.1 无响应主体的HttpActionResult

11.3.2 含响应主体的HttpActionResult

11.3.3 ResponseMessageResult

11.4 HttpResponseMessage的生成

11.4.1 ActionResultConverter

11.4.2 从消息处理管道来看HttpResponseMessage的生成

第12章 过滤器

12.1 Filter及其提供机制

12.1.1 Filter

12.1.2 FilterProvider

12.1.3 5种Filter类型

12.2 认证与授权

12.2.1 Identity

12.2.2 Principal

12.2.3 AuthenticationFilter

12.2.4 AuthorizationFilter

12.3 针对Action方法执行前后的拦截

12.3.1 ActionFilterAttribute

12.3.2 实例演示:利用自定义ActionFilter实现对Action方法执行结果

的缓存

12.4 异常处理与Filter的屏蔽

12.4.1 ExceptionFilter

12.4.2 实例演示:利用自定义的ExceptionFilter集成EntLib进行异常

处理(S1208)

12.4.3 OverrideFilter

第13章 安全

13.1 IIS/ASP.NET认证

13.1.1 Basic认证

13.1.2 Digest认证

13.1.3 集成Windows认证

13.1.4 Forms认证

13.2 SSL/TLS

13.2.1 非对称加密

13.2.2 通过SSL/TLS实现传输安全

13.2.3 SSL/TLS的应用

13.3 第三方认证

13.3.1 OAuth 2.0简介

13.3.2 “Implicit”Authorization Grant

13.3.3 “Authorization Code”Authorization Grant

第14章 跨域资源共享

14.1 同源策略

14.1.1 实例演示:跨域调用Web API

14.1.2 JSONP

14.2 CORS规范

14.2.1 资源的授权

14.2.2 实例演示:利用自定义的MessageHandler支持跨域资源共享

14.3 CORS在ASP.NET Web API中的实现

14.3.1 实例演示:采用ASP.NET Web API原生的机制实现跨域资源

共享(S1406)

14.3.2 CORS授权策略及其提供机制

14.3.3 资源授权的检验和CORS响应报头的生成

14.3.4 CorsMessageHandler

第15章 Web API的调用

15.1 HttpClient

15.1.1 HttpMessageInvoker

15.1.2 HttpClientHandler

15.1.3 HttpClient

15.2 客户端消息处理管道

15.2.1 HttpMessageHandler管道

15.2.2 HttpClientFactory

15.3 面向“对象”编程

15.3.1 将数据对象写入请求消息

15.3.2 读取HTTP消息主体内容并反序列化为数据对象

附录A 实例列表

内容摘要:

《ASP.NET Web API 2框架揭秘》一本注重实证的书,功能各异、多达120个可供下载的示例,大量实践与实用性扩展,可直接用于解决实际开发问题。全新的学习方法,通过完整论证来实现彻底的融会贯通。本书可以作为讲设计架构的书来读,因为其以经过长期检验的经典架构作为学习素材,可很好地启发深度思考。讲原理的书同样足够实用。了解ASP.NETAPI框架的运行原理,才能写出迎合框架的高效程序,才能找到解决具体项目问题的扩展点。这是一本帮助你提升内功的书。虽然编程模式可以速成,但本书还是希望你能对ASP.NET或ASP.NETMVC有基本概念。

  互联网应用尤其是移动互联网应用的普及,让采用Web直接通信的轻量级Web Service成为主流,本书要讲的正是ASP.NET Web API。它是一个全新的通信平台,因为微软没有选择在重量级框架上通过扩展实现轻量级通信。本书宗旨是清晰呈现消息处理管道,以使读者完全理解从接收请求到响应回复的全流程,并彻底掌握路由、HttpController激活、Action方法的选择与执行、参数的绑定与验证、过滤器的执行和安全等相关机制。



海报:

编辑推荐:

《ASP.NET Web API 2框架揭秘》一本注重实证的书,功能各异、多达120个可供下载的示例,大量实践与实用性扩展,可直接用于解决实际开发问题。全新的学习方法,通过完整论证来实现彻底的融会贯通。本书可以作为讲设计架构的书来读,因为其以经过长期检验的经典架构作为学习素材,可很好地启发深度思考。讲原理的书同样足够实用。了解ASP.NETAPI框架的运行原理,才能写出最迎合框架的高效程序,才能找到解决具体项目问题的扩展点。这是一本帮助你提升内功的书。虽然编程模式可以速成,但本书还是希望你对ASP.NET或ASP.NETMVC有基本概念。
  
  互联网应用尤其是移动互联网应用的普及,让采用Web直接通信的轻量级Web Service成为主流,本书要讲的正是ASP.NET Web API。它是一个全新的通信平台,因为微软没有选择在重量级框架上通过扩展实现轻量级通信。本书宗旨是清晰呈现消息处理管道,以使读者完全理解从接收请求到响应回复的全流程,并彻底掌握路由、HttpController激活、Action方法的选择与执行、参数的绑定与验证、过滤器的执行和安全等相关机制。
  
海报:

书籍规格:

书籍详细信息
书名ASP.NET Web API 2框架揭秘站内查询相似图书
9787121235368
如需购买下载《ASP.NET Web API 2框架揭秘》pdf扫描版电子书或查询更多相关信息,请直接复制isbn,搜索即可全网搜索该ISBN
出版地北京出版单位电子工业出版社
版次1版印次1
定价(元)108.0语种简体中文
尺寸23 × 19装帧平装
页数印数

书籍信息归属:

ASP.NET Web API 2框架揭秘是电子工业出版社于2014.7出版的中图分类号为 TP393.092 的主题关于 网页制作工具-程序设计 的书籍。