HttpHandler过滤请求..
记得以前写过一篇..后来找不到了..我自己也忘记怎么弄了..
在网上找了很多的教程..写的总有瑕疵..感觉不顺畅..
自己来一篇..
其实很简单..
先建立一个类 继承并实现接口 IHttpHandler
例如:
namespace MyHandler
{
public class ImageH : IHttpHandler
{ public bool IsReusable
{
get { return true; }
} public void ProcessRequest(HttpContext context)
{
//为了演示..就不再做过多的判断..直接输出一个其他的图片
context.Response.ContentType = "image/JPEG";
context.Response.WriteFile("/Content/Image/error.jpg");
//context.Response.Redirect("/Home");
context.Response.End();
}
}
}
相信这个类上边没有什么疑问..
就是添加到任何地方就好..
然后是在配置文件web.config 里的配置
很多教程都说是这样配置的
<system.web>
<httpHandlers>
<add path="*.jpg,*.jpeg,*.gif,*.png,*.bmp" verb="*" type="CustomHandler.JpgHandler,CustomHandler" />
</httpHandlers>
</system.web>
但是我不知道是我运气背还是怎滴..总之就是报错.. 说什么集成模式不能运行什么的..MD老子还在VS里运行的那里能调这个..
后来改成...
<system.webServer>
<handlers> <add name="jpg" path="*.jpg" verb="*" type="MyHandler.ImageH,MyHandler"/>
<add name="png" path="*.png" verb="*" type="MyHandler.ImageH,MyHandler"/>
<add name="html" path="*.html" verb="*" type="MyHandler.HtmlH,MyHandler"/> </handlers>
</system.webServer>
可以了..
这里边具体是为什么我没有搞明白..希望在以后的某个偶然中搞明白吧..或请路过的大神提点一二..
也许这配置到了服务器上要改成第一种那样..但是只要保证能够运行就好..
话说HttpHandler的另外一个作用还可以是实时生成静态页面来提供访问..
以前做站点静态化都是修改完数据之后自动重新生成..或者手动批量生成..
如果当时会用HttpHandler的话..就好的多了..
HttpHandler过滤请求..的更多相关文章
- SuperMap-iServer过滤请求返回值
目的: iServer发布的arcgis地图服务中,由于tileinfo参数为null,导致用arcgis-ios客户端开发的APP闪退.通过过滤器将get请求的返回值修改 代码: package c ...
- Java Servlet (1) —— Filter过滤请求与响应
Java Servlet (1) -- Filter过滤请求与响应 版本: Java EE 6 参考来源: Oracle:The Java EE 6 Tutorial: Filtering Reque ...
- Charles系列三:Charles打断点(包含修改请求,修改返回的内容),模拟慢速网络(弱网测试),域名映射,过滤请求,接口调试,打压测试
一:Charles断点的使用(包含修改请求,修改返回的数据) 设置断点来修改请求和返回的数据,在开发过程中可以模拟多种响应.步骤如下: 1.添加断点方法有两种: 方法1:找到Charles中菜单项Pr ...
- WebAuthorize(中间件对所有请求进行拦截)core只有通过添加中间件过滤请求方式 而非继承然后写特性的那种方式
一.WebAuthorize 1.项目名称 WebAuthorize 2.加个中间件 过滤请求. using Microsoft.AspNetCore.Builder; using Microsoft ...
- mitmproxy 使用mitmdump 过滤请求
mitmproxy 抓包工具,优点可以使用python进行二次开发,或者进行接口的mock 官网地址:https://www.mitmproxy.org/ 打算用这个最初的需求是,想对app做接口测试 ...
- 【Spring】使用Filter过滤请求
原文:http://liujiajia.me/#/blog/details/spring-filter-request-with-filter public class CustomizedFilte ...
- 模块和处理程序之通过HttpModule和HttpHandler拦截入站HTTP请求执行指定托管代码模块
1.简介 大多数情况下,作为一个asp.net web开发对整个web应用程序的控制是十分有限的,我们的控制往往只能做到对应用程序(高层面)的基本控制.但是,很多时候,我们需要能够低级层面进行交互,例 ...
- HttpHandler与HttpModule介绍
前言:作为一个开发人员,我们看过很多的关于开发的书,但是都是教我们"知其然",并没有教我们"知其所以然",我们开发web项目的过程中,当我们输完URL敲下回车就 ...
- ASP.NET 管道事件与HttpModule, HttpHandler简单理解
BeginRequest 指示请求处理开始 AuthenticateRequest 封装请求身份验证过程 AuthorizeRequest 封装检查是否能利用以前缓存的输出页面处理请求的过程 Reso ...
随机推荐
- jquery-jsrender使用
JsRender是一款基于jQuery的JavaScript模版引擎 特点: · 简单直观 · 功能强大 · 可扩展的 · 快如闪电 jsrender使用比较简单,本文简单结束一些常用的 使用过程 ...
- 谷歌console开发人员官方文档(注意是谷歌)
https://developers.google.com/web/tools/chrome-devtools/debug/console/console-ui?hl=en#opening-the-c ...
- 【BZOJ-2438】杀人游戏 Tarjan + 缩点 + 概率
2438: [中山市选2011]杀人游戏 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 1638 Solved: 433[Submit][Statu ...
- 微信公众平台教程和SDK收集
教程收集: 1.Senparc(.net) http://www.cnblogs.com/szw/archive/2013/05/14/weixin-course-index.html 2.方倍工作室 ...
- SPOJ GSS5 Can you answer these queries V
Time Limit: 132MS Memory Limit: 1572864KB 64bit IO Format: %lld & %llu Description You are g ...
- 关于 SSV-ID: 4474 POC的分析和思考
SSV-ID: 4474 SSV-AppDir: Discuz!漏洞 发布时间: 2008-11-21 (GMT+0800) URL:http://sebug.net/vuldb/ssvid-4474 ...
- fedora22有时不能启动
[3.327871][drm:intel_set_pch_fifo_underrun_reporting [i915]] *ERROR* uncleared pch fifo underrun on ...
- MySql的一些操作
我们安装mysql时一开始root用户如果没设置的话是可以没有密码的,所以,如果需要设置密码,则 格式:mysql> set password for 用户名@localhost = passw ...
- Python 循环判断和数据类型
循环和判断 1.if 形式 if condition_1: statement_block_1 elif condition_2: statement_block_2 else: statement_ ...
- (转载)LCA问题的Tarjan算法
转载自:Click Here LCA问题(Lowest Common Ancestors,最近公共祖先问题),是指给定一棵有根树T,给出若干个查询LCA(u, v)(通常查询数量较大),每次求树T中两 ...