如何理解 Web API
- 什么是web API?
- web API 控制器、路由
- 测试 Web API
什么是web API ?
简单说,API是接口,访问程序的某一个功能或者数据,实现移动端和客户端的程序之间的数据交互;web API,是可以通过HTTP的协议访问的web的上的API。
如图1-1所示,发送请求,通过json的格式返回结果。

图1-1
ASP.Net web API的特性:
- ASP.NET Web API是构建RESTful服务的理想平台。
- ASP.NET Web API构建于ASP.NET之上,支持ASP.NET请求/响应管道
- ASP.NET Web API将HTTP谓词映射到方法名称。
- ASP.NET Web API支持不同格式的响应数据。内置支持JSON,XML,BSON格式。
- ASP.NET Web API可以托管在IIS,自托管或支持.NET 4.0+的其他Web服务器中。
- ASP.NET Web API框架包括用于与Web API服务器通信的新HttpClient。HttpClient可用于ASP.MVC服务器端,Windows窗体应用程序,控制台应用程序或其他应用程序。
Web API 控制器、路由
[RoutePrefix("data")]
public class CNCheckerController : InitXpoController
{
[Route("GetAllOldEquipments")]
[HttpGet]
public Result<List<AppOldEquipmentInfo>> GetAllOldEquipments(string Brand, string ModuleType, Palatfromtype PlatformTypes, int pageSize, int Page)
{
Result<List<AppOldEquipmentInfo>> result = new Result<List<AppOldEquipmentInfo>>();
result.Data = new List<AppOldEquipmentInfo>();
using (Session)
{
GroupOperator groupOperator = new GroupOperator(GroupOperatorType.And);
if (!string.IsNullOrEmpty(Brand))groupOperator.Operands.Add(new BinaryOperator("FBrand", Brand));
if (!string.IsNullOrEmpty(ModuleType))groupOperator.Operands.Add(new BinaryOperator("FModuleType", ModuleType));
groupOperator.Operands.Add(CriteriaOperator.Parse("FPlatformTypes", PlatformTypes));
groupOperator.Operands.Add(CriteriaOperator.Parse("ture"));
var Searcholdequipment = new XPCollection<B_oldequipment>(Session, groupOperator, new SortProperty
("createdate", DevExpress.Xpo.DB.SortingDirection.Descending))
{ TopReturnedObjects = pageSize, SkipReturnedObjects = pageSize * Page };
foreach (var oldequ in Searcholdequipment)
{
AppOldEquipmentInfo appoldequipment = new AppOldEquipmentInfo();
appoldequipment.Init(oldequ);
result.Data.Add(appoldequipment);
}
result.Successed = true;
result.Msg = "获取数据成功";
}
return result;
}
详细说明:
这是属性路由的获取数据的信息;
① [RoutePrefix]: 整个控制器设置公共前缀
② Route: 控制器中的路由
③ HttpGet:请求的方法
④ 路由url: [RoutePrefix]+【Route】是请求API的url地址

HTTP方法:
HttpPsot 、 HttpGet 、HttpDelete 、 HttpPut.
测试Web API
开发web API在本地进行测试,我们可以使用以下第三方工具来测试Web API或者在 web API页面上进行测试。
Fildder
posteman
如何理解 Web API的更多相关文章
- 从文件下载视角来理解Web API
一.问题源起 从Web From过来的人应该会比较熟悉以下下载文件的代码: [HttpPost] [Route("Download")] public void Download( ...
- 理解WEB API网关
*:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...
- [ASP.NET MVC 小牛之路]18 - Web API
Web API 是ASP.NET平台新加的一个特性,它可以简单快速地创建Web服务为HTTP客户端提供API.Web API 使用的基础库是和一般的MVC框架一样的,但Web API并不是MVC框架的 ...
- ASP.NET MVC WEB API必知必会知识点总结
一.理解WEB API:提供基于RESTful架构的WEB服务,通过HTTP请求方法(GET, PUT, POST, DELETE)映射到服务器端相应的ACTION方法(CRUD). RESTful架 ...
- 我所理解的RESTful Web API [Web标准篇]
REST不是一个标准,而是一种软件应用架构风格.基于SOAP的Web服务采用RPC架构,如果说RPC是一种面向操作的架构风格,而REST则是一种面向资源的架构风格.REST是目前业界更为推崇的构建新一 ...
- 我所理解的RESTful Web API [设计篇]
<我所理解的RESTful Web API [Web标准篇]>Web服务已经成为了异质系统之间的互联与集成的主要手段,在过去一段不短的时间里,Web服务几乎清一水地采用SOAP来构建.构建 ...
- 对RESTful Web API的理解与设计思路
距离上一篇关于Web API的文章(如何实现RESTful Web API的身份验证)有好些时间了,在那篇文章中提到的方法是非常简单而有效的,我在实际的项目中就这么用了,代码经过一段时间的磨合,已经很 ...
- web api token验证理解
最近一直在学习web api authentication,以Jwt为例,可以这样理解,token是身份证,用户名和密码是户口本,身份证是有有效期的(jwt 有过期时间),且携带方便(自己带有所有信息 ...
- 对一个前端使用AngularJS后端使用ASP.NET Web API项目的理解(4)
chsakell分享了一个前端使用AngularJS,后端使用ASP.NET Web API的项目. 源码: https://github.com/chsakell/spa-webapi-angula ...
随机推荐
- iOS测试中发现一个textview控制,使用clear()无法清除文字
iOS测试中发现一个textview控制,使用clear()无法清除
- MySQL里默认的几个库是干啥的?
本文涉及:MySQL安装后自带的4个数据库:information_schema. performance_schema.sys.mysql的作用及其中各个表所存储的数据含义 information_ ...
- 【转载】 C#中ArrayList集合类的使用
在C#的集合操作过程中,我们一般常用的集合类为List集合,List集合是一种强类型的泛型集合,其实还有一个ArrayList集合类,ArrayList集合类则非泛型类的集合,并且ArrayList集 ...
- 25、vuex改变store中数据
以登录为例: 1.安装vuex:npm install vuex --save 2.在main.js文件中引入: import store from '@/store/index.js'new Vue ...
- echart添加轴最小值,最大值,间隔以及设置线条颜色
yAxis: [{ type: 'value' }, { type: 'value', name: '上证指数', //设置最小值,最大值,间隔 min: 1000, max: 6000, inter ...
- C#8.0—非空引用类型
非空引用类型--C#8.0 原文地址:https://devblogs.microsoft.com/dotnet/try-out-nullable-reference-types/?utm_sourc ...
- TCP 协议简介-阮一峰(转载)
TCP 协议简介 作者: 阮一峰 日期: 2017年6月 8日 TCP 是互联网核心协议之一,本文介绍它的基础知识. 一.TCP 协议的作用 互联网由一整套协议构成.TCP 只是其中的一层,有着自 ...
- Odoo graph视图
转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10826175.html 一:图形视图 图形视图用来表示对模型的概述和分析,根元素是<graph> ...
- 《linux就该这么学》课堂笔记12 网卡配置、防火墙配置
1.网卡配置(四种方法,选其一即可,配置后须重启网络服务使其生效) 1)修改配置文件./etc/sysconfig/network-scripts/ifcfg-网卡名称 2)nmtui [RHEL7] ...
- lvs+keepalived高可用负载均衡
一.实验环境和网络拓扑图 本实验需要5台虚拟机,一台客户机,2台lvs调度器,两台web服务器. 客户机:192.168.0.6/24 lvs1:192.168.0.201/24 lvs2:192.1 ...