首页
学习
活动
专区
圈层
工具
发布

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本身的路由系统是相对独立的。...另一个同样通过字典类型表示的只读属性DataTokens,我们应该不会感到陌生,至于通过制度属性Handler返回的HttpMessageHandler对象是组成ASP.NET Web API消息处理管道的核心...Web API管道的HttpConfiguration对象,这依赖于我们对Web API的寄宿方式,这并没有定义在ASP.NET Web API的核心框架之中。

10.4K110
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    如果调用ASP.NET Web API不能发送PUTDELETE请求怎么办?

    理想的RESTful Web API采用面向资源的架构,并使用请求的HTTP方法表示针对目标资源的操作类型。...[本文已经同步到《How ASP.NET Web API Works?》] 我们一般采用“HTTP方法重写”的方式来解决这个问题。...ASP.NET Web API采用管道式的设计,这个旨在解决部分HTTP方法在网络环境中不被支持的HTTP方法重写机制可以很容易地通过自定义HttpMessageHandler来实现。...按照ASP.NET Web API默认提供的HTTP方法与Action方法名称之间的映射机制,这4个Action方法支持HTTP方法与自身的方法名称一致。...,更不能确保针对它的Web API调用率先完成)采用GET请求之外,其余请求均采用POST方法。

    1.8K50

    如何测量并报告ASP.NET Core Web API请求的响应时间

    如何测量并报告ASP.NET Core Web API请求的响应时间 介绍 大家都知道性能是API的流行语。而相应时间则是API性能的一个重要并且可测量的参数。...让我们探索一些方法来捕获API的响应时间,主要集中在捕获API中花费的时间。我们的目标是计算从Asp.net Core运行时接收请求到处理响应并从服务器返回结果所经过的时间(以毫秒为单位)。...如果您使用过早期版本的Asp.net Web API,那么您将熟悉Filter的概念。过滤器允许您在请求处理管道中的特定阶段之前或之后运行代码。 我们将实现一个用于计算响应时间的过滤器,如下所示。...我们希望在请求进入ASP.NET Core管道后添加代码以启动计时器,并在管道处理响应后停止计时器。请求管道开始时的自定义中间件似乎是访问请求最早访问并在管道中执行最后一步之前进行访问的最佳方法。...我们将构建一个响应时间中间件,我们将其作为第一个中间件添加到请求管道中,以便我们可以在请求进入Asp.net Core管道后立即启动计时器。 如何处理响应时间数据呢?

    2.5K10

    Asp.Net Web API 2第五课——Web API路由

    Asp.Net Web API 导航     Asp.Net Web API第一课——入门 http://www.cnblogs.com/aehyok/p/3432158.html       Asp.Net.../aehyok/p/3441915.html 前言 本文描述了 ASP.NET Web API 如何将 HTTP 请求路由到控制器。...Routing Tables路由表   在Asp.Net Web API中,一个控制器就是一个处理HTTP请求的类,控制器的public 方法被叫做action方法或者简单的Aciton。...例如,对于一个Get请求,Web API会查找一个以“Get…”开头的动作,如“GetContact”或“GetAllContacts”等。这种约定只应用于GET、POST、PUT和DELETE方法。...另外要注意,POST请求是失败的,因为该控制器未定义“Post…”方法。 Routing Variations路由变化  上一节描述了ASP.NET Web API基本的路由机制。

    1.8K50

    NetCore项目发布对前端项目进行打包合并发布

    在某个小项目中, api使用asp.net core 3.x 编写, UI页面则使用Vuejs. 正常情况下, 项目右键的发布只会发布api项目,而不会管Vuejs的项目....所以通过简单的改造,在发布该项目时不光发布api本身, 同时也编译和发布Vuejs写的页面. 这样子就可以2个项目一起部署了. 当然我们也可以通过CI/CD来解决问题. 项目结构: ?...*.Manager 是一个asp.net core 3.x的webapi项目, 主要为ui提供接口. ClientApp 目录下时Vuejs的前端UI项目....configuration.RootPath = "ClientApp"; }); //Startup.Configure app.UseCors(x => x.AllowAnyOrigin().WithMethods("Get", "POST...spa.UseVueCli(npmScript: "serve"); } } }); Vuejs项目的变动 在开发模式时, 将对api的访问全部proxy到我们的asp.net

    1.8K10

    【译】我是如何学习任意前端框架的

    下面我们逐步了解下: 组件 任何框架的核心都是以创建组件来达到复用的目的。...端点API示例: Github API OMDb API Spotify Web API wunderground API reddit API 你将学到: 使用HTTP客户端向端点API发起请求 使用键盘事件监听器...你将学到: 路由守卫:某些页面只允许通过身份验证的用户(访问) 如何发送并保存JWT(JSON Web令牌)以发出需要经过身份验证的用户请求 3.CRUD App 增删查改的应用程序是本节中最受欢迎的前端应用程序...项目实例: 书签应用 To-Do App 你将学到: 验证用户的表单输入,如果用户输入错误就提示错误信息 如何创建put、delete、post和get的HTTP请求 将你的应用程序和任意后端框架集成...你将学到: 学习如何使用管理状态解决方案,如redux for react, ngrx for angular 2+ 或 vuex for vuejs以及如何将其与客户端应用程序集成 使你的应用更灵活

    4.9K10

    Asp.Net WebApi核心对象解析(一)

    我们在学习ASP.NET Web API时,需要对HTTP协议、web知识有一个比较深入的认识,这样在学习ASP.NET Web API时会比较快速的上手和应用。...在ASP.NET Web API中,一个控制器是处理HTTP请求的类。控制器的公共方法被称为动作方法或简单的动作。当Web API框架接收到一个请求,它请求路由到一个动作。...ApiController是ValuesController类的父类,是整个ASP.NET Web API的核心类,继承该类可以用来创建ASP.NET Web API控制器。...ASP.NET Web API框架支持从请求元素到操作方法参数的绑定。对于HTTP响应值转换成适当的HTTP响应消息正文。...四.总结:    以上是对ASP.NET Web API背景和使用方法,以及对ASP.NET Web API核心对象的简要介绍,下篇会主要介绍HttpRequestMessage、HttpResponseMessage

    5.6K70

    ASP.NET-自定义HttpModule与HttpHandler

    BeginRequest #发出信号表示创建任何给定的新请求。...事件的功能可以访问由 PostAuthenticateRequest 处理的任何数据 AuthorizeRequest #发出信号表示 ASP.NET 已对当前请求进行了授权。...订阅 AuthorizeRequest 事件可确保在处理附加的模块或事件处理程序之前对请求进行身份验证和授权 PostAuthorizeRequest #发出信号表示 ASP.NET 已对当前请求进行了授权...*-支持所有的HTTP动作;“GET”-支持Get操作;“POST”-支持Post操作;“GET, POST”-支持两种操作。...具体的可以参考这篇文章 部署网站注意事项: 网站采用.net 4.0集成模式部署,集成模式是一种统一的请求处理管道,它将ASP.NET请求管道与IIS核心管道组合在一起,这种模式能够提供更好的性能,能够实现配置和治理的模块化

    2.4K81

    .NET Core微服务之基于Ocelot实现API网关服务

    Tip: 此篇已加入.NET Core微服务基础系列文章索引 一、啥是API网关?   API 网关一般放到微服务的最前端,并且要让API 网关变成由应用所发起的每个请求的入口。...使用API网关,我们可以抽象所有这些复杂性,并创建客户端们可以使用的优化后的端点,并向那些模块们发出请求。...API网关的核心要点是:所有的客户端和消费端都通过统一的网关接入微服务,在网关层处理所有的非业务功能(比如验证、鉴权、监控等等)。   ...等),而上游服务器则指的是提供Web网页服务的Web Server(比如MVC Application,可能需要访问REST Service)。...网关所在的地址和端口(这里是192.168.2.231:8800)进行测试:先请求ClientService,再请求ProductService,可以看到API网关对请求进行了转发,服务消费方不需要记住每个

    1.3K30

    Asp.Net Web API(一)

    Web API 与MVC 的区别     1.使用区别 MVC主要用于Web站点开发,它在后端实现了一套完整的MVC开发框架,能提供方便的页面开发,提供给了后端Html构成,用户可以方便的开发出带页面的站点...           Web API主要用于做开放API接口,更抽象,更不注重VIew生成      2.自身实现区别              两种框架主要使在Asp.Net的基础上进行改造,主要是对...而Web API除了扩展前者外,另外写出了一套独立的,独立于Asp.Net的消息处理管道,就像借鉴了原来的房子模型,重新设计出了另一套别墅,这也很好的解释了为什么Web API可以寄宿在不同的宿主上(宿主本质就是利用一个具体的一个用程序为...Web API提供给一个可运行的环境,并解决请求的接收和响应的回复),如 Web Host,Self Host方式,这与WCF相似。...何况它们两者虽然都有Controller和Action,但是请求的实现和响应的回复机制也是不同的,比如Web API处理消息的两个核心类是HttpRequestMessage和HttpResponseMessage

    1.1K40

    Contact Manager Web API 示例CRUD 操作

    联系人管理器web API是一个Asp.net web api示例程序,演示了通过ASP.NET Web API 公开联系信息,并允许您添加和删除联系人,示例地址http://code.msdn.microsoft.com...下面的文章以这个示例讲解ASP.NET Web API的各方面知识: 1、CRUD操作: CURD 是 "Create, Read, Update, Delete" (新增、读取、更新、删除) 的简写,...新增资源 在 ASP.NET Web API,你能在 Model 使用强型别 CLR 对象,他们将会自动序列化为 XML 或 JSON 给 Client。...默认,ASP.NET Web API Framework 会从请求主体 (request body)里的 route 与 复合(complex) 型别来取得简易的参数类型。...CRUD 操作总结 在使用 ASP.NET Web API Framework 时,你能发现与 HTTP/1.1 规范有很大关连性,以前较很少关心与了解的内容,例如,PUT、DELETE、POST的处理

    1.2K90
    领券