设为首页 加入收藏

TOP

.NET MVC5简介(六)HttpHandler(二)
2019-09-25 11:18:17 】 浏览:86
Tags:.NET MVC5 简介 HttpHandler
b.Core.PipeLine.ImageHandler,MyMVCDemo.Web.Core
" /> <add name="jpg" path="*.jpg" verb="*" type="MyMVCDemo.Web.Core.PipeLine.ImageHandler,MyMVCDemo.Web.Core" /> <add name="jpeg" path="*.jpeg" verb="*" type="MyMVCDemo.Web.Core.PipeLine.ImageHandler,MyMVCDemo.Web.Core" /> </handlers> <modules> View Code

自定义Handler处理,就是跨域处理各种后缀请求,跨域加入自己的逻辑,如果没有,请求都到某个页面,再传参,然后返回图片,防盗链,伪静态,RSS,加水印,robot(爬虫)

MVC里面不是Controller+Action?其实是有MVCHandler来处理请求的,期间完成对ACtion的调用

网站启动时,对RouteCollection进行配置,把正则规则和RouteHandler(提供HttpHandler)绑定,放入RouteCollection,请求来临时,用RouteCollection进行匹配。在UrlRoutingModule这个勒中

 

 

 如果路由匹配失败,还是继续原始的Asp.NET 流程,所以WebForm和MVC是共存的,所以也能解释指定后缀请求需要路由的忽略。

按照添加顺序进行匹配,第一个温和,就直接返回了,后面的就无效了。路由是按照注册顺序进行匹配,遇到第一个温和的就结束匹配,每个请求只会被一个路由匹配上

 

 

其实所谓的MVC框架,其实就是在ASP.NET管道上扩展的,在PostResolveCache事件扩展了,URLRoutingModule,会在任何请求进来后,先进行路由匹配,如果匹配上了,就指定HttpHandler,没有路由匹配就还是走原来的流程。

 

 

 

 扩展自己的Route,写入RouteCollection,可以自定义规则完成路由,扩展HttpHandler,就可以为所欲为,跳出MVC框架

 

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇C#基础之委托 下一篇ASP.NET Core 3.0 原生DI拓展实现..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目