zoukankan      html  css  js  c++  java
  • 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>");
  • 相关阅读:
    Codevs 1283 等差子序列
    Codevs 1282 约瑟夫问题
    Codevs 1228 苹果树
    Codevs 1191 数轴染色
    洛谷P1080 国王游戏
    Codevs 1523 地精部落
    2014-7-17 NOIP模拟赛
    Codevs 3409 搬运礼物
    Codevs 1425 最长公共子串
    TyvjP1863 [Poetize I]黑魔法师之门(2014-8-27)
  • 原文地址:https://www.cnblogs.com/genesis/p/4659827.html
Copyright © 2011-2022 走看看