HttpHandler简介

新建的一般处理程序后缀为.ashx,一般会另外新建一个后缀为.ashx.cs的文件,其实所有的代码都写在.ashx.cs里面,只是微软帮我们做了一个傻瓜化的转换
新建的一般处理程序,如:Text1,它就是一个类,实现了IHttpHandler接口,并且实现了ProcessRequest方法,这个方法就是用来处理客户的请求的一个方法
当用户请求Text1.ashx的时候,ProcessRequest方法就会被调用,服务器调用Text1.ashx.cs中的ProcessRequest方法,通过context.Response.ContentType设置"响应"的内容,context.Request获得请求的内容。

例子,运行此程序,在网址上输入Text1.ashx?i=2&j=3,即可输出i+j的值为5

context.Response.ContentType = "text/plain";//服务器返回给浏览器是什么数据
int i = Convert.ToInt32(context.Request["i"]);//获取参数i的值
int j = Convert.ToInt32(context.Request["j"]);//获取参数j的值

注意:context.Request获取的值,如果获取不到时,int类型则为0,string类型则为null
context.Response.Write(i + j);

登录案例:在网址上输入Text1.ashx?username=admin&password=123

context.Response.ContentType = "text/html";
string username = context.Request["username"];
string password = context.Request["password"];
context.Response.Write("<html><head></head><body>");
if (username == "admin" && password == "123")
{
    context.Response.Write("<font color='red'>登录成功</font>");
}
else
{
    context.Response.Write("登录失败");
}
context.Response.Write("</body></html>");
原文地址:https://www.cnblogs.com/genesis/p/4659827.html