1 / 15
文档名称:

asp. net项目开发案例10.Asp. net Mvc API.ppt

格式:ppt   大小:1,064KB   页数:15页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

asp. net项目开发案例10.Asp. net Mvc API.ppt

上传人:2890135236 2016/9/1 文件大小:1.04 MB

下载得到文件列表

asp. net项目开发案例10.Asp. net Mvc API.ppt

文档介绍

文档介绍:BF-TECH DNET 软件开发工程师高薪就业品牌课程版权所有:北风网 MVC MVC 开发实战教程开发实战教程讲师:石曼迪讲师:石曼迪第十章第十章 Mvc API Mvc API 目录? Web API 简介? Web API 路由? Web API CURD ? Web API 客户端调用 Web API 简介? MVC 4 包含了 Web API ,这是一个创建可以连接包括浏览器、移动设备等多种客户端的 Http 服务的新框架, Web API 也是构建 RESTful 服务的理想平台。 Web API 简介??先进的 HTTP 编程模型: 使用新的强类型的 HTTP 对象模型直接操作 HTTP 请求和响应, 在 HTTP 客户端使用相同的编程模型和 HTTP 管道; ??支持路由: Web API 完整支持 路由, 包括路由参数和约束。此外, 到动作的映射支持约定, 从此将不再需要向类或者方法添加类似于[HttpPost] 之类的属性; ??内容协商: 客户端与服务端可以一起决定 API 返回数据的格式。默认支持 XML , JSON 以及 Form URL-Encoded 格式, 可以扩展添加自定义格式, 甚至可以替换掉默认的内容协商策略; ??模型绑定与验证: 模型绑定器可以轻易地从 HTTP 对象; ??过滤: Web API 支持过滤, 包括总所周知的[Authorize] 过滤标记, 可以为 Action 添加并插入自定义过滤, 实现认证、异常处理等; ??查询聚合: 只要简单的返回 Iqueryable<T> , Web API 将会支持通过 OData 地址约定进行查询; ??改进的 Http 细节可测试性: Web API 不是将 HTTP 细节设置到一个静态的 Context 对象上, 而是使用 HttpRequestMessage 和 HttpResponseMessage 实例, 可以使用这些对象的泛型版本为这些 Http 类型添加自定义类型; ??改进的依赖反转(IoC) 支持: Web API 使用 MVC Dependency Resolver 实现的服务定位器模式在不同的场景下来获取实例; ??基于代码的配置: Web API 单独使用代码完成配置, 从而保证了配置文件的整洁; ??自托管(Self-Host) : Web API 除了可以托管在 IIS 中, 还可以托管在进程中,依旧可以使用路由以及其它的特性。 Web API 路由?对于每一个 Http 消息, Web API 框架通过路由表决定由哪个控制器处理请求。当你创建一个新的 Web API 项目时, 将会包含一个类似这样的一个默认的路由: /api/{controller}/{id} {controller} 和{id} 是两个占位符, 当遇到一个符合这种样式的 URI ,将将会开始寻找合适的控制器方法进行调用, 规则如下: {controller} :用来与控制器名称像匹配; HTTP 请求的方法用来与方法名称匹配; ( 本规则只适用于 GET, POST, PUT 和 DELETE ) {id} :如果有, 将会用于和方法的 id 参数进行匹配; Web API 路由 HTTP Method URI Action GET /api/products GetAllProducts GET /api/products/5 GetProduct(5) POST /api/products HTTP Status 405 GET /api/users/ HTTP Status 404 这里有一些请求的例子, 以及基于当前实现情况的的 HTTP 动作结果: Web API CURD 动作 HTTP 方法相对路径获取全部 GET /api/products 指定 id 获取 GET /api/products/id 添加 POST /api/products 更新 PUT /api/products/id 删除 DELETE /api/products/id CURD 是指 Create 、 Update 、 Read 、 Delete 四个简单的数据库操作, 通常大多数 Web 服务也通过 REST 风格的服务提供这些操作。接下来将继续完善 ProductsController 以支持下面所有的操作: HTTP 的四个主要方法( GET , PUT , POST , DELETE )按照下列方式映射为 CURD 操作: ? G