.net WebApi开发
1】.部署环境.net4及以上版本。
【2】.vs2010 开发需单独安装vs2010 sp1和mvc4
mvc4:http://www.asp.net/mvc/mvc4
或者 http://down.51cto.com/data/969436
【3】.开发
1.新建项目选择ASP.net MVC 4 Web应用程序
2.选择Web API
3.在新建立的项目里面有已经生成的webapi模版
其中App_Start文件夹下WebApiConfig.cs和RouteConfig.cs文件主要配置api的路由信息。
Controllers文件夹下的文件为api的实现文件。其中ValuesController.cs是示例api文件。
4.新建自己的webapi文件。
在Controllers文件夹上单击鼠标右键,添加--控制器,我们新建一个TestApiController.cs的文件。其中TestApi是我们的Controller的名称在路由中使用。
5.我们新加入两个Get方法api,一个带参一个不带参

6.在WebApiConfig.cs文件中配置路由路径:routeTemplate: "api/{controller}/{Action}/{id}",
然后运行项目我们在地址栏中输入

controller:TestApi
action:我们写的方法名
id:传入的参数
7.同样我们可以写入Post方法等等。
WebApi的Get访问方式比较简单,我们可以通过浏览器url地址直接访问。
但是Post方式比较麻烦,我们可以通过html的form提交post值,当然也可以在PostData里面直接传值。在IOS和Android开发中常用PostData
从在可以端调去[FromBody]类api的时候在传入的参数前一定要加一个“=”号。不然返回是null。
从PostData传入的参数我们以Request来接收,当然可以接收string data等类型。
string postData = Request.Content.ReadAsStringAsync().Result;
public class TestApi2Controller : ApiController
{
///无参数Post
public string PostAaa()
{
return "hellowrold";
}
//有参数从form中传入 id:"=hellowrold"
public string PostFromId([FromBody]string id)
{
return id;
}
//PostData传值
public string PostFromPosData()
{
string postData = Request.Content.ReadAsStringAsync().Result;
return postData;
}
}
WebApi 技巧
1.返回参数去掉xml格式,以纯json格式返回。在WebApiConfig.cs文件中配置
public static void Register(HttpConfiguration config)
{
//////////////设置不以xml格式返回
config.Formatters.Remove(config.Formatters.XmlFormatter);
///////////////
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}
2.返回json去掉双引号
//JavaScriptSerializer类在System.Web.Extensions.dll中,注意添加这个引用
JavaScriptSerializer serializer = new JavaScriptSerializer();
//JSON序列化
string result = serializer.Serialize(list);
//格式化Json引号""
var respRet = new HttpResponseMessage { Content = new StringContent(result, System.Text.Encoding.UTF8, "application/json") };
return respRet;
.net WebApi开发的更多相关文章
- ASP.NET Core WebAPI 开发-新建WebAPI项目
ASP.NET Core WebAPI 开发-新建WebAPI项目, ASP.NET Core 1.0 RC2 即将发布,我们现在来学习一下 ASP.NET Core WebAPI开发. 网上已经有泄 ...
- GJM : Taurus.MVC 2.0 开源发布:WebAPI开发教程 [转载]
Taurus.MVC 2.0 开源发布:WebAPI开发教程 转载自http://www.cnblogs.com/cyq1162/p/6069020.html 因是新手 粘贴时有一个版权问题 本文原 ...
- Restful WebApi开发实践
随笔分类 - Restful WebApi开发实践 C#对WebApi数据操作 摘要: ## 目标简化并统一程序获取WebApi对应实体数据的过程,方便对实体进行扩充.原理就是数据服务使用反射发现 ...
- 【WebApi系列】浅谈HTTP在WebApi开发中的运用
WebApi系列文章 [01]浅谈HTTP在WebApi开发中的运用 [02]聊聊WebApi体系结构 [03]详解WebApi参数的传递 [04]详解WebApi测试和PostMan [05]浅谈W ...
- ASP.NET Core WebAPI 开发-新建WebAPI项目 转
转 http://www.cnblogs.com/linezero/p/5497472.html ASP.NET Core WebAPI 开发-新建WebAPI项目 ASP.NET Core We ...
- 基于flask的轻量级webapi开发入门-从搭建到部署
基于flask的轻量级webapi开发入门-从搭建到部署 注:本文的代码开发工作均是在python3.7环境下完成的. 关键词:python flask tornado webapi 在python虚 ...
- 现阶段Mono版本下的WebAPI开发中存在的一些问题
背景 由于公司积极推动各业务产品服务化,得益于容器化技术的不断发展及普及,项目组的服务也更多地基于Mono,Jexus,Docker,Kubernetes等类库.容器.管理工具运行于Linux系统上. ...
- Html5+css3+angularjs+jquery+webAPi 开发手机web(一)
前言 随着浏览器的发展 HTML5+CSS3 的使用也越来越广泛,一直想学这个,想学那个折腾下来几乎没学到什么东西.工作经验告诉我,要掌握一门技术,就需要在项目中去磨练, 所以我就准备开发一个手机端的 ...
- 【WebApi】————.net WebApi开发(一)
2013年08月08日 ⁄ 综合 ⁄ 共 554字 ⁄ 字号 小 中 大 ⁄ 评论关闭 [1].部署环境.net4及以上版本. [2].vs2010 开发需单独安装vs2010 sp1和mvc4 m ...
随机推荐
- Java开发环境搭建——CentOS配置
普通用户添加到sudoers u切换到root visudo进入编辑,找到root ALL=(ALL) ALL,在后面加上myusername ALL=(ALL) ALL 配置网络sudo ...
- TCP的三次握手(建立连接)和四次挥手(关闭连接)
参照: http://course.ccniit.com/CSTD/Linux/reference/files/018.PDF http://hi.baidu.com/raycomer/item/94 ...
- 总结libevent安装方法
1.先用:ls -al /usr/lib | grep libevent 查看是否已安装,如果已安装且版本低于1.3,则先通过:rpm -e libevent -nodeps 进行卸载. 2.下载l ...
- thinkphp模型
1.获取系统常量信息的方法:在控制器DengLuController里面下写入下面的方法,然后调用该方法. public function test() { //echo "这是测试的&qu ...
- centos 单独安装apachebench
这两天在测试php性能优化方法. 为了做压力测试可观察效果,就选择了ApacheBench来作为压力测试工具.其实就是大家常说的ab. 但是这个工具是安装apache web server的时候自带的 ...
- leetcode 111 minimum depth of binary tree
problem description: Given a binary tree, find its minimum depth. The minimum depth is the number of ...
- java对象与XML相互转化
起因 最近在公司做了一次webservice相关的任务,其中我最敢兴趣的就是webservice接受到XML对应的流以后是如何方便的转化成java对象,而java对象又是如何生成对应的XML的. 目的 ...
- PHP获取接口数据(模拟Get)
当我们在做PHP开发的时候,很多时候需要对接口进行测试,或者更方便的调用一些已有模块的接口,取到结果并进行后续操作,我们可以通过curl进行模拟提交post和get请求,来去实现这些功能. 之后就可以 ...
- linux系统内核流转浅析
SJTUBEAR 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 我们通过简单 ...
- PL/SQL Developer不配置TNS直接登录
如果只是临时登录,就没必要去配置一个TNS了,Database那里直接输入<IP>:<PORT>/<服务器SERVER_NAME> EBS的直接登录: http:/ ...