WebAPI创建
一、创建Web API
1、Create a New Web API Project
创建新的Web API项目
Start by running Visual Studio 2010 and select New Project from the Start page. Or, from the File menu, select New and then Project.
启动VS 2012,并在“开始页”选择“新项目”。或从“文件”菜单选择“新建”,然后选择“项目”。
在“模板”面板中选择“已安装模板”,并展开“Visual C#”节点。选择该节点下的“Web”。在项目模板列表中选择“ASP.NET MVC 4 Web应用程序”。
在“新的ASP.NET MVC 4项目”对话框中选择“Web API”
二、Web API路由与动作
1、路由设置
找到App_Start文件夹下WebApiConfig.cs文件,修改为下面设置
- public static void Register(HttpConfiguration config)
- {
- config.Routes.MapHttpRoute(
- name: "PayOrderSendWifi", //此名称可随意设置,没用到
- routeTemplate: "api/{controller}/{id}",
- defaults: new
- {
- id = RouteParameter.Optional,
- }
- );
- //直接xml文件排除
- config.Formatters.Remove(config.Formatters.XmlFormatter);
- }
三、创建Web API方法
1、新建一个控制器,添加一个POST请求方法
- [HttpPost]
- public ResponseSignDTO UpdateUseTimeBySign(RequestWiFiDTO reqDTO)
- {
- ResponseSignDTO dto = new ResponseSignDTO();
- try
- {
- //要执行的方法..................
- }
- catch (Exception ex)
- {
- }
- return dto;
- }
1、添加返回(响应)类
- /// <summary>
- /// 响应类
- /// </summary>
- public class ResponseSignDTO
- {
- /// <summary>
- /// 错误消息
- /// </summary>
- public ErrorMessage ErrorMessage { get; set; }
- }
2、添加请求类
- public class RequestWiFiDTO
- {
- /// <summary>
- /// 用户编号
- /// </summary>
- public int UserID { get; set; }
- }
3、消息类
- /// <summary>
- /// 消息类
- /// </summary>
- public class ErrorMessage
- {
- public int ID { get; set; }
- public string Message { get; set; }
- public static ErrorMessage Succeed()
- {
- ErrorMessage dto = new ErrorMessage();
- dto.ID = 0;
- dto.Message = "成功";
- return dto;
- }
- public static ErrorMessage Error(string errorMessage)
- {
- ErrorMessage dto = new ErrorMessage();
- dto.ID = 1;
- dto.Message = errorMessage;
- return dto;
- }
- }
- /// <summary>
- /// 响应类
- /// </summary>
- public class ResponseDTO
- {
- /// <summary>
- /// 错误消息
- /// </summary>
- public ErrorMessage ErrorMessage { get; set; }
- }
2、添加一个Get请求方法
- [HttpGet]
- public ResponseDTO PayOrderSendWifiDTO(int UserID,int Days)
- {
- ResponseDTO respDTO = new ResponseDTO();
- try
- {
- //要执行的方法..................
- }
- catch (Exception ex)
- {
- }
- return respDTO;
- }
四、调用方式
1、调用POST方法:使用Chrome流量器的PostMan工具。
前端模拟发送数据/调试的好工具:Chrome下的Postman-REST Client
下载地址 https://chrome.google.com/webstore/search/postman-REST%20Client
PostMan设置:
①、Headers
Content-Type application/json
Accept textml,application/xml,application/xhtml+xml,textml;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
2、调用Get方法:
http://localhost:3553/PayOrderSendWifi?UserID=8&Days=5
WebAPI创建的更多相关文章
- Webapi创建和使用 以及填坑(二)
Webapi创建和使用 以及填坑(二) 上篇文章由于时间问题没能讲到POST提交,今天做一个补充 POST: 当我们直接通过POST发送方式发送会发现错误信息 参考解决:https://www.cnb ...
- Webapi创建和使用 以及填坑(一)
Webapi创建和使用 前言:在开发的过程中接口的用途有很多,而且是非常必要.通过接口我们可以跨语言的进行开发web与app或者其他程序,比如http接口.api接口..Rpc接口.rmi.webse ...
- c# WebApi创建及客户端调用
前段时间学习WebApi的创建与调用,网上的信息千奇百怪(知识有限,看不懂啊),通过查阅资料及借鉴博友实例分析后总结一下,总结一套简单完整的WebApi创建及实例 首先创建一个WebApi服务(流程就 ...
- 1.3为WebApi创建帮助文档
当你创建一个网络 API 时,它很有用来创建一个帮助页,以便其他开发人员将知道如何调用您的 API.您可以创建的所有文档手动,但它是自动生成尽可能多地更好. 为了简化这一任务,ASP.NET Web ...
- Webapi创建和使用 以及填坑(三)
WebApi使用填坑 前面工作跟别人做数据对接,因为我们是对接方所以东西都得按照他们的要求进行修改,于是给自己挖了很多坑,其实更多的都是自己能力还不够,在这里也做一个笔记了. 请求类型:applica ...
- 为.net Core 3.0 WebApi 创建Linux守护进程
前言 我们一般可以在Linux服务器上执行 dotnet <app_assembly.dll> 命令来运行我们的.net Core WebApi应用.但是这样运行起来的应用很不稳定,关闭终 ...
- .net webapi创建接口
最近使用webapi做了一个用户数据库接口,方便其它网站接入验证用户,实现中解决出现的一些问题,做了一些记录, 1.返回显示为json数据 2.允许其他网站访问,刚开始没有设,在本地机测试时可以访问, ...
- VSC 创建 Net Core 3.0 版本 WebAPI
首先确保安装好了VSC(这个算是废话......), 并且为VSC安装了Microsoft提供的C#插件, 以及.Net Core 3.0, 然后就可以开始了 1. 使用VSC打开已经创建好的文件夹( ...
- ASP.NET Core 3.0 WebApi 系列【1】创建ASP.NET Core WebApi 项目
目录 写在前面 一.运行环境 二.项目搭建 三.测试 API 四.基础知识 五.写在最后 写在前面 C#语言可以创建RESTful服务,被称作WebApi.在这里总结学习使用支持创建.读取.更新.删除 ...
随机推荐
- etcd命令
etcdctl支持下面列出来的命令,基本上可以分为数据库操作和非数据库操作,可以查看etcdctl README.md来了解更多 ➜ ~ etcdctl -hNAME: etcdctl - A sim ...
- == Equals ReferenceEquals 比较
== 为操作符 ReferenceEquals和Equals为函数 ========================================================= Referenc ...
- jsp 路径问题
<script type="text/javascript" src="<%=ApplicationContextUtil.getBasePath(r ...
- unreal3对象管理模块分析二
上一篇主要记了UClass的创建,现在总结一下UObject的创建,可以从几个不同角度来理解. 从途径上看,可以根据UObject的构造函数来分个类: // Constructors. UObject ...
- 转:基于InfluxDB&Grafana的JMeter实时性能测试数据的监控和展示
本文主要讲述如何利用JMeter监听器Backend Listener,配合使用InfluxDB+Grafana展示实时性能测试数据 关于JMeter实时测试数据 JMeter从2.11版本开始,命令 ...
- JavaScript中的真和假,==和===, 不等
咋JS中,下面这些值表示 “假”: "" (empty string) 0,-0,NaN (invalid number) null, undefined false 除了上面这些 ...
- eigen3.3.3+opencv3.2跑orbslam3数据集出现usleep错误
cd ORB_SLAM2 chmod +x build.sh ./build.sh的时候出现错误:/home/zhao/ORB_SLAM2-master/src/System.cc:236:28: e ...
- Python中读取,显示,保存图片的方法
一 opencv import cv2 as cv # load img = cv.imread(imagepath) # shape=(height, width, channel) h,w,c = ...
- 51nod1010(枚举+二分)
题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1010 题意:中文题诶- 思路:求第一个比 x (1<= ...
- 洛谷P4762 [CERC2014]Virus synthesis(回文自动机+dp)
传送门 回文自动机的好题啊 先建一个回文自动机,然后记$dp[i]$表示转移到$i$节点代表的回文串的最少的需要次数 首先肯定2操作越多越好,经过2操作之后的串必定是一个回文串,所以最后的答案肯定是由 ...