• 什么是web API?
  • web API 控制器、路由
  • 测试  Web  API

 什么是web API ?

简单说,API是接口,访问程序的某一个功能或者数据,实现移动端和客户端的程序之间的数据交互;web API,是可以通过HTTP的协议访问的web的上的API。

如图1-1所示,发送请求,通过json的格式返回结果。

图1-1

 ASP.Net web API的特性:

  1. ASP.NET Web API是构建RESTful服务的理想平台。
  2. ASP.NET Web API构建于ASP.NET之上,支持ASP.NET请求/响应管道
  3. ASP.NET Web API将HTTP谓词映射到方法名称。
  4. ASP.NET Web API支持不同格式的响应数据。内置支持JSON,XML,BSON格式。
  5. ASP.NET Web API可以托管在IIS,自托管或支持.NET 4.0+的其他Web服务器中。
  6. 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的更多相关文章

  1. 从文件下载视角来理解Web API

    一.问题源起 从Web From过来的人应该会比较熟悉以下下载文件的代码: [HttpPost] [Route("Download")] public void Download( ...

  2. 理解WEB API网关

    *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...

  3. [ASP.NET MVC 小牛之路]18 - Web API

    Web API 是ASP.NET平台新加的一个特性,它可以简单快速地创建Web服务为HTTP客户端提供API.Web API 使用的基础库是和一般的MVC框架一样的,但Web API并不是MVC框架的 ...

  4. ASP.NET MVC WEB API必知必会知识点总结

    一.理解WEB API:提供基于RESTful架构的WEB服务,通过HTTP请求方法(GET, PUT, POST, DELETE)映射到服务器端相应的ACTION方法(CRUD). RESTful架 ...

  5. 我所理解的RESTful Web API [Web标准篇]

    REST不是一个标准,而是一种软件应用架构风格.基于SOAP的Web服务采用RPC架构,如果说RPC是一种面向操作的架构风格,而REST则是一种面向资源的架构风格.REST是目前业界更为推崇的构建新一 ...

  6. 我所理解的RESTful Web API [设计篇]

    <我所理解的RESTful Web API [Web标准篇]>Web服务已经成为了异质系统之间的互联与集成的主要手段,在过去一段不短的时间里,Web服务几乎清一水地采用SOAP来构建.构建 ...

  7. 对RESTful Web API的理解与设计思路

    距离上一篇关于Web API的文章(如何实现RESTful Web API的身份验证)有好些时间了,在那篇文章中提到的方法是非常简单而有效的,我在实际的项目中就这么用了,代码经过一段时间的磨合,已经很 ...

  8. web api token验证理解

    最近一直在学习web api authentication,以Jwt为例,可以这样理解,token是身份证,用户名和密码是户口本,身份证是有有效期的(jwt 有过期时间),且携带方便(自己带有所有信息 ...

  9. 对一个前端使用AngularJS后端使用ASP.NET Web API项目的理解(4)

    chsakell分享了一个前端使用AngularJS,后端使用ASP.NET Web API的项目. 源码: https://github.com/chsakell/spa-webapi-angula ...

随机推荐

  1. iOS测试中发现一个textview控制,使用clear()无法清除文字

    iOS测试中发现一个textview控制,使用clear()无法清除

  2. MySQL里默认的几个库是干啥的?

    本文涉及:MySQL安装后自带的4个数据库:information_schema. performance_schema.sys.mysql的作用及其中各个表所存储的数据含义 information_ ...

  3. 【转载】 C#中ArrayList集合类的使用

    在C#的集合操作过程中,我们一般常用的集合类为List集合,List集合是一种强类型的泛型集合,其实还有一个ArrayList集合类,ArrayList集合类则非泛型类的集合,并且ArrayList集 ...

  4. 25、vuex改变store中数据

    以登录为例: 1.安装vuex:npm install vuex --save 2.在main.js文件中引入: import store from '@/store/index.js'new Vue ...

  5. echart添加轴最小值,最大值,间隔以及设置线条颜色

    yAxis: [{ type: 'value' }, { type: 'value', name: '上证指数', //设置最小值,最大值,间隔 min: 1000, max: 6000, inter ...

  6. C#8.0—非空引用类型

    非空引用类型--C#8.0 原文地址:https://devblogs.microsoft.com/dotnet/try-out-nullable-reference-types/?utm_sourc ...

  7. TCP 协议简介-阮一峰(转载)

      TCP 协议简介 作者: 阮一峰 日期: 2017年6月 8日 TCP 是互联网核心协议之一,本文介绍它的基础知识. 一.TCP 协议的作用 互联网由一整套协议构成.TCP 只是其中的一层,有着自 ...

  8. Odoo graph视图

    转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10826175.html 一:图形视图 图形视图用来表示对模型的概述和分析,根元素是<graph> ...

  9. 《linux就该这么学》课堂笔记12 网卡配置、防火墙配置

    1.网卡配置(四种方法,选其一即可,配置后须重启网络服务使其生效) 1)修改配置文件./etc/sysconfig/network-scripts/ifcfg-网卡名称 2)nmtui [RHEL7] ...

  10. lvs+keepalived高可用负载均衡

    一.实验环境和网络拓扑图 本实验需要5台虚拟机,一台客户机,2台lvs调度器,两台web服务器. 客户机:192.168.0.6/24 lvs1:192.168.0.201/24 lvs2:192.1 ...