虽然通过Visual Studio向导在ASP.NET Web API项目中创建的 Controller类型默认派生与抽象类型ApiController,但是ASP.NET Web API框架本身只要求它实现...[本文已经同步到《How ASP.NET Web API Works?》]...HttpController可以视为对ASP.NET Web API的消息处理管道的延续。...通过“ASP.NET Web API标准的“管道式”设计”的介绍我们知道位于管道末端的是一个HttpRoutingDispatcher对象。...调用另一个方法GetFilters可以获取应用到目标HttpController类型上的所有Filter,Filter在ASP.NET Web API中是一个非常重要的概念,同时也是一种常见的扩展方式,
扯淡到这就完了,下来就聊聊今天的主角web api,web api 是mvc4.0之后出现的一种技术吧,他的创建和带来的便利我就不介绍了。这边文章主要聊聊,我对web api开发的一些理解。...post请求中参数为name的值。...话题二:post传递多个不同对象的参数 已经post请求需要使用[FromBody]特性修饰符接收,但是FromBody只能接收单个参数,如果需要传递不同对象的输出就比较麻烦了,新建实体对象成本太大,也不能完全适应适应的类型...,这个时候需要使用JObject来处理,代码如下: jQuery.post("/Api/Userinfo/Add/", { mobile: "18049579804", pwd: "123456...当然还有一种方式,是没有关键字修饰的方法,比如:FindUser这种情况下,这种请求下默认是Post请求的Get请求就会报405的错。
SOAP 允许我们将我们的服务所需的所有知识放在信息本身中",而"您可以使用 [Web API] 来创建只使用标准HTTP 概念 (URI 和动词)的HTTP服务,和创建使用更高级的 HTTP功能的服务...Old JSON) 服务,你能使用ASP.NET Web API做到这两点。...它是ASP.NET 开源的Web栈的所有部分。 ASP.NET Web API Samples on Codeplex,看到C# 协议对象如何在 JSON 世界和 C# 世界之间轻易来回移动了吗?...JSON.NET 和 ASP.NET Web API 的模型绑定提供了一个开心的介质——一个中间背景——被称为 JToken。...以上内容来自:微小的开心功能第2部分-Visual Studio 2012 中的ASP.NET Web API MVC4 WebAPI(一) MVC4 WebAPI(二)——Web API工作方式 http
通过IoC的方式实现针对目标HttpController的激活具有重要的意义。[本文已经同步到《How ASP.NET Web API Works?》]...通过《ASP.NET Web API的Controller是如何被创建的?》...我们在一个ASP.NET Web API应用中定义了这个UnityHttpControllerActivator类型。...Web API应用运行之后,我们可以直接在浏览器中输入相应的地址获取所有联系人列表(“/api/contacts”)和针对某个ID为“001”(“/api/contacts/001”)的联系人信息,相应的联系人信息会以如下图所示的形式出现在浏览器上...运行此ASP.NET Web API应用后通过浏览器试图获取联系人信息,我们依然会得到如上图所示的结果。
相信已经有很多文章来介绍ASP.Net Web API 技术,本系列文章主要介绍如何使用数据流,HTTPS,以及可扩展的Web API 方面的技术,系列文章主要有三篇内容。...个人认为使用Web API创建应用需要注意的三个关键点: 采用服务及方法满足的目标 每个方法的输入,如请求 每个方法的输出,如响应 通常情况下,Asp.Net Web API 定义method语法与HTTP...但是此方法在很多情况下,并不实用,假如你想在单个API controller 类中定义多个Get 或Post 方法,在这种情况下,需要定义包含action 的路径,将Action 作为URI 的一部分。...Web API框架也提供了一些其他功能来处理路径方面的问题,与MVC 的路径处理方法相似。因此可定义不同类型的Action方法。 数据流 网络App 最常见的执行操作就是获取数据流。...ASP.NET Web API 能够处理客户端与服务器端传输的重量级的数据流,数据流可来源于目录文件,也可是数据库中的二进制文件。
虽然ASP.NET Web API框架采用与ASP.NET MVC框架类似的管道式设计,但是ASP.NET Web API管道的核心部分(定义在程序集System.Web.Http.dll中)已经移除了对...System.Web.dll程序集的依赖,实现在ASP.NET Web API框架中的URL路由系统亦是如此。...也就是说,ASP.NET Web API核心框架的URL路由系统与ASP.NET本身的路由系统是相对独立的。...我们先来讨论一下实现在ASP.NET Web API框架中这个独立的路由系统是如何设计的。...Web API管道的HttpConfiguration对象,这依赖于我们对Web API的寄宿方式,这并没有定义在ASP.NET Web API的核心框架之中。
在ASP.NET CORE MVC中,Web API是其中一个功能子集,可以直接使用MVC的特性及路由等功能。...在成功构建 ASP.NET CORE MVC项目之后,选中解决方案,先填加一个API的文件夹,填加后,选中API文件夹, ?...选择新建项,选择填加Web API控制器,要注意控制器在命名时,是以Controller结尾的,这个不能改,前面的随意,比如,此处以NoteController.cs为例 ?...api/note [HttpPost] public async Task Post([FromBody]NoteModel model).../note 即可获取note的信息了 当然 也可以访问地址http://127.0.0.1:port/api/note?
类型的对象(ASP.NET WebAPI中Action的返回值最终都会被转换为HttpResponseMessage类型的对象),该对象包含一个HttpError类型实例。...过滤器可分为三个级别: Action Controller Global 注意:ASP.NET MVC和ASP.NET WebAPI的异常过滤器不可混用 ExceptionHandler 以下情形中的异常...相关阅读 catch all unhandled exceptions in ASP.NET Web Api Handling Errors in Web API Using Exception Filters...and Exception Handlers Exception Handling in ASP.NET Web API Global Error Handling in ASP.NET Web API...2 Action Results in Web API 2 版权声明 本文为作者原创,版权归作者雪飞鸿所有。
前言 阅读本文之前,您也可以到Asp.Net Web API 2 系列导航进行查看 http://www.cnblogs.com/aehyok/p/3446289.html 路由就是Web API如何把...Web API支持一种新的路由类型,被叫做属性路由。顾名思义,属性路由是用属性来创建路由。在你的Web API中属性路由可以让你更好的控制URI。你能容易的创建描述资源阶层的URIs。 ...API版本控制 在下面的例子中,"api/v1/products"相对于"api/v2/products"将被路由到不同的控制器。...在大多数情况下,除非在你的管道中有自定义的模型绑定,这两种表现是等价的。 7、路由名称 在Web API中,每个路由都有一个名称。路由名称被用于生成链接,你能在HTTP响应中包含一个链接。...本文参考链接http://www.asp.net/web-api/overview/web-api-routing-and-actions/attribute-routing-in-web-api-2
前言 阅读本文之前,您也可以到Asp.Net Web API 2 系列导航进行查看 http://www.cnblogs.com/aehyok/p/3446289.html 本文描述ASP.NET Web...API中的JSON和XML格式化器。...在ASP.NET Web API中,媒体类型格式化器(Media-type Formatter)是一种能够做以下工作的对象: 从HTTP消息体读取CLR(公共语言运行时)对象 将CLR对象写入HTTP消息体...Web API提供了用于JSON和XML的媒体类型格式化器。...这么做的主要原因是: 将你的Web API响应限制到特定的媒体类型。例如,你可能决定只支持JSON响应,而删除XML格式化器。 用一个自定义格式化器代替默认的格式化器。
单form的提交有两种方式,一种是get的方法,一种是post 的方法.看下面代码,理解ASP.NET Get和Post两种提交的区别: 从URL中可看出ASP.NET Get和Post的区别....ASP.NET的Get和Post方式的区别归纳如下几点: 1. get是从服务器上获取数据,post是向服务器传送数据。...2. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。...post传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB。 5. get安全性非常低,post安全性较高。但是执行效率却比Post方法好。
在 ASP.NET Core Web API 中,由于 C# 是一种静态语言(dynamic 在此不表),当我们定义了一个类型用于接收 HTTP Patch 请求参数的时候,在 Action 中无法直接从实例中得知客户端提供了哪些参数...二、将 Keys 保存在 Input Model 中 定义一个名为 PatchInput 的类: public abstract class PatchInput { [BindNever]...bindingContext); if (bindingContext.Model is PatchInput model) { // 将 Form 中的...ServiceDescriptor.Singleton()); return services; } } 到目前为止,在 Action 中已经能获取到请求的...Core Web API 中处理 JSON Patch 请求 https://learn.microsoft.com/zh-cn/aspnet/core/web-api/jsonpatch?
InfoQ上有一篇文章是 使用IAPIExplorer列举ASP.NET Web API,文章针对的版本是ASP.NET Web API Beta版本写,IAPIExplorer已经包含在RC版本里了,...而且发现ASP.NET Web API的HttpConfiguration 的RC版本比Beta版本多了一个属性: public DefaultServices Services { get; internal...使用该API可以完成的工作有: 产生文档 创建机器可读的元数据 创建一个测试客户端 微软员工Yao发表了两篇文章(ASP.NET Web API: Introducing IApiExplorer/ApiExplorer...和ASP.NET Web API: Generating a Web API help page using ApiExplorer)分别用于展示如何使用API打印Web API列表以及如何创建帮助文档...Using curl to POST request into ASP.NET Web Api service
在.NET中,早期是用Remoting/Webservice来处理所有程序间的通信,从.NET 3.0开始使用WCF统一了通信模型,ASP.NET MVC4的推出,形成大的One ASP.NET战略,增加了...$filter=MeetingDate eq datetime’2013-01-17′ 在项目中启用OData查询,首先在项目加入Web API的OData支持,通过Nuget 查找ASP.NET Web...OData Queries in ASP.NET Web API:http://www.codeguru.com/csharp/.net/working-with-odata-queries-in-asp.net-web-api.htm...在ASP.NET Web API OData中利用Queryable API进行验证: http://www.infoq.com/cn/news/2013/02/queryable-api 一个创建...ASP.Net Web API Tutorial – Part 1 示例代码下载: http://files.cnblogs.com/shanyou/WebApiOData.zip
概述: Java Stream API 有助于处理元素序列,提供过滤、映射和减少等操作。...流可用于以声明方式执行操作,类似于对数据的类似 SQL 的操作 关键概念: 流:支持顺序和并行聚合操作的元素序列 中间操作:返回另一个流且延迟的操作(例如,filter、map) 码头运营:产生结果或副作用且不懒惰的操作...Collectors.toList()); names.forEach(System.out::println); } } 收集:收集将流的元素收集到集合或其他数据结构中...System.out.println("Total Age: " + totalAge); } } 平面映射 :FlatMapping 将嵌套结构展平到单个流中...; sortedPeople.forEach(System.out::println); } } 查找和匹配: 查找和匹配操作检查流的元素
在http协议中,实际上有八个http方法。但在实际开发中,绝大多数情况我们只会用到两个方法,就是get和post。所以我们来稍微谈谈两种方法的区别,以及何时应该选取何种方法。...get和post的区别 post有一个体! 这个是关键。 ? Paste_Image.png ?...Paste_Image.png get和post都能发送参数,但是利用get的话,对参数数据量有限制,因为参数只能是放在请求行的内容中。而post由于在体中,则没有数据量的限制。...同时还有一个问题,就是get可以建立书签,而post请求则不可以。 ** 除了上述的数据量大小,安全,书签的差别之外,还有一个非常重要的差别就是是否幂等** 什么是幂等呢?...** get是幂等的,而post不是幂等的**
使用 OWIN 作为 ASP.NET Web API 的宿主 ASP.NET Web API 是一种框架,用于轻松构建可以访问多种客户端(包括浏览器和移动 设备)的 HTTP 服务。...ASP.NET Web API 是一种用于在 .NET Framework 上构建 RESTful 应用程序的理想平台。...ASP.NET Web API 是 OWIN 兼容的, 因此可以在 OWIN 服务器上运行。...OWIN 兼容的 Web API 应用, 自然要先添加一个 OWIN 约定的 Startup 类, 来配置我们的 OWIN 应用。...// POST api/values public void Post([FromBody]string value) { } // PUT api/values/5
在本文中,我将介绍一些可以为ASP.NET Web API生成文档的方法。...除非你从未生成过Web API网站,否则你将会意识到,默认模板已经包含了为你可能实现的API 生成文档的功能,其中的一个示例位于authme.ws。...入门 关于如何使用Swagger为ASP.NET Web API生成文档已经写了不止两篇文章(还有一个叫做Swashbuckle的NuGet包,你可以很容易地集成它),但是我需要一些动态的东西 - 事实上...你需要什么 你需要能够在IIS或IIS Express中可以启动的Web API站点。...理想情况下,你要做的是将前面提到的Swashbuckle NuGet包集成到你现有的(或新的)Web API项目中。
ASP.NET Web API提供了一个独立于执行环境的抽象化的HTTP请求处理管道,而ASP.NET Web API自身的路由系统也不依赖于ASP.NET路由系统,所以它可以采用不同的寄宿方式运行于不同的应用程序中...实现在HostedHttpRoute之中的核心路由功能基本上是通过这个Route对象完成的,所以我们才说Web Host下的ASP.NET Web API的URL路由最终还是利用ASP.NET自身的路由系统实现的...Web API路由系统在Web Host情况下是如何利用ASP.NET自身的路有系统实现URL路由的:ASP.NET Web API路由系统中的HostedHttpRoute对象通过创建ASP.NET...Web API在Web Host模式下依然是借助ASP.NET自身的路由系统实现URL路由,那么意味着当我们针对ASP.NET Web API进行路由映射的时候必须在ASP.NET路由系统的全局路由表中添加对一个继承自抽象类...当我们将定义的Web API已Web Host模式部署在某个Web应用中并进行相应的路由影射,这些注册的HttpRoute(HostedHttpRoute)最终转换成ASP.NET全局路由表中的Route
Node.js概述 Node.js不是JS,是一种服务器端技术,它的竞争对手是PHP/JSP/ASP.NET,历史上第一次有一种语言可以通吃前后台! 1. 单线程逻辑处理; 2. 非阻塞; 3....Node.js中的特有概念-模块 Modal:模态框 Model:模型 Module:模块 一个Web项目功能可以分为很多不同的“模块”,如商品管理模块、用户管理模块、支付模块、促销模块、商家管理模块...(path); 以文件流的方式写入数据 21. readerStream.pipe(writeStream); 管道提供了一个输出流到输入流的机制,通常我们用于从一个流中获取数据并将数据传递到另外一个流中...该模块可用于编写基于HTTP协议的客户端程序(即浏览器);也可以编写基于HTTP协议的服务器端程序(即Web服务器) htttp常用的类: 1. http.ClientRequest 常用的两个函数 ...data 收到数据后的响应事件; (2). err 链接产生错误时的事件; GET请求方法 POST请求方法 2. http.Server 编写服务器端程序; 常用的方法如下: (1). listen