Asp.net-一般处理程序

1.请求-处理-响应
新建一般处理程序:handler;
浏览方式-设为默认值;


请求:http://localhost:18367/Handler1.ashx;
处理响应,向浏览器画出html:
 context.Response.ContentType = "text/html";
 context.Response.Write("<h1>Hello World</h1>");


2.vs2012默认使用iisweb服务器,vs2010是用vsweb开发服务器;基于安全考虑,iis默认不允许浏览目录,直接访问ashx文件名就可以,iis一般在c:\ProgramFiles\IIS Express;
项目-右键属性-web-修改服务器;


3.一般处理程序的请求参数:
        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/html";
            String action = context.Request["name"];
            int age =Convert.ToInt32(context.Request["age"]);
            context.Response.Write("<h1>Hello World--" + action + "</h1>");
            context.Response.Write("<h1>caonimei--"+age+"</h1>");
        }


http://localhost:1108/Handler1.ashx?name=lyc&age=45


4.表单提交:
添加新建项--html文件
<body>
    <form action="Handler1.ashx" method="get">
        姓名:<input type="text" name="name"/><br />
        年龄:<input type="text" name="age"/><br />
        <input type="checkbox" name="isvip"/>
        <input type="submit"/>
    </form>
</body>
----------
            context.Response.ContentType = "text/html";
            String name = context.Request["name"];
            int age =Convert.ToInt32(context.Request["age"]);
            String isvip=context.Request["isvip"];
            context.Response.Write("<h1>Hello World--" + name + "</h1>");
            context.Response.Write("<h1>caonimei--"+age+"</h1>");


            if (isvip=="on")
            {
                context.Response.Write("<h1>你是vip</h1>");
            }
            else
            {
                context.Response.Write("<h1>你是傻逼</h1>");
            }


//name是可以重复 的;
action="Handler1.ashx"   //提交给Handler1.ashx处理
//只有input\textarea\select的value属性值才会提交给服务器;标签必须设定name属性;name是给服务器用的,id是dom用的;


5.get和post
get把数据填到url地址栏上提交;
post传递表单是隐藏到http报文中的。
get传递的数据量有限,post没有限制;
post无法通过url在其他用户中还原;
get方式:如果url中有特殊汉字符号等则需要对url进行编码;


6.http协议:浏览器和服务器交流协议
http不保持连接,不保持连接可以处理更多的请求;
请求头;
响应头;
            context.Response.ContentType = "text/html";//表示返回html;
            context.Response.ContentType = "text/plain";//表示返回文本;


7.redirect重定向
是向浏览器发回302重定向,是通知浏览器重新访问url这个网址;在地址栏中可以看到地址的变化;
                context.Response.Redirect("HtmlPage1.html");


8.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ASP.NET MVC 一般处理程序(General Handler),也称为 ashx 文件,是一种在 ASP.NET MVC 中用于处理特定请求的一种方式。 ASP.NET MVC 一般处理程序继承自 IHttpHandler 接口,它主要用于处理静态文件或非标准的请求。与控制器不同,一般处理程序不需要路由或视图,它直接接受请求并返回处理结果。 一般处理程序在项目中以 .ashx 的文件形式存在,可以在其中实现一些自定义的处理逻辑。可以通过在 Global.asax 文件中注册路由来映射一般处理程序的请求。 与控制器相比,一般处理程序更轻量级,更适合处理一些简单的请求,如文件下载、图片验证码生成等。它使用起来更加灵活,并且性能也更好。 使用一般处理程序的步骤如下: 1. 在项目中创建一个 .ashx 文件。 2. 实现一般处理程序的逻辑,可以通过实现 ProcessRequest 方法来处理请求,同时还可以通过实现 IRequiresSessionState 接口来访问会话状态。 3. 在 Global.asax 文件中注册一般处理程序的路由,指定请求的 URL 模式和对应的一般处理程序类名。 4. 在浏览器中访问对应的 URL,即可触发一般处理程序的逻辑,并返回处理结果。 总之,ASP.NET MVC 一般处理程序是一种用于处理特定请求的方式,它比控制器更轻量级、更灵活,适合处理一些简单的请求。我们可以通过创建一般处理程序文件,实现自定义逻辑,并在 Global.asax 文件中注册路由来使用一般处理程序

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值