您的位置:首页 > 编程语言 > ASP

一般处理程序、ASP.NET核心知识(5)--转载

2015-12-13 16:20 656 查看

初窥

1.新建一个一般处理程序





新建一个一般处理程序

2.看看里头的代码

public class MyHandler : IHttpHandler

{

public void ProcessRequest(HttpContext context)

{

context.Response.ContentType = "text/plain";

context.Response.Write("Hello World");

}

public bool IsReusable

{

get

{

return false;

}

}

}





通常我们的逻辑大多写在 ProcessRequest里头。

服务器通过Content-Type告诉客户端响应的数据的类型,这样浏览器就根据返回数据
的类型来进行不同的处理,常用Content-Type:text/html、image/gif、
image/jpeg、text/plain、text/javascript。

3.简单介绍

对于返回结果不是HTML的,不需要回发处理的数据请求都可以通过一般处理程序完成。例如生成RSS Feed、XML、图片或执行ajax。

关于请求方式(form表单)

新建一个html页,在body中输入下面内容。

[b]1.form的几个属性
[/b]
<form name="input" action="MyHandler.ashx" method="get">
Username: <input type="text" name="user">
<input type="submit" value="Submit">
</form>
1)form中通过action属性设定表单被提交给哪个页面
method是提交的方式,分get方式和post方式两种
浏览器向服务器端提交数据,被提交数据的表单(包括input、select、textarea等)需要放到form中,
为了在服务端取出表单项的值,需要在HTML中为表单元素设定name属性
2)注意id是给JS操作Dom用的,name才是提交给服务器用的。id不能重复,name可以重复,重复的name的值都会被提交给服务器。

2.GET和POST

Html表单<form>可以自动给服务器提交参数。

get是通过url请求参数的方式提交,请求参数会直接暴露在url中。如下图





post是通过报文体,提交的数据不会直接暴露给用户。如下图





[align=left]3.哪些标签会被提交?[/align]
[align=left]哪些标签的哪些值会被提交给服务器呢?将用户填写的内容提交到服务器有如下几个条件:[/align]
[align=left]提交条件1:[/align]
[align=left]只能为 input、textarea、select三种类型的标签。[/align]
[align=left]提交条件2:[/align]
[align=left]只有三种标签的value属性的值(select是选中项的value)才会提交给服务器。标签必须设定name属性(道理:没有name怎么拼网址i=5)。如果要将标签的value属性值提交到服务器,则必须为标签设定name属性,提交到服务器的时候将会以“name=value”的键值对的方式提交给服务器。name是给服务器用的,id是给Dom用的。[/align]
[align=left]提交条件3:[/align]
[align=left]对于RadioButton,同name的为一组,选中的RadioButton的value被提交到服务器。(讲道理:如果都提交,那服务器知道谁被选中了吗?)[/align]
[align=left]提交条件4:[/align]
[align=left]当input=submit的时候,只有被点击的按钮(要有name)的value才会被提交(道理:否则我知道谁被点了?)。[/align]
[align=left]提交条件5:[/align]
[align=left]放到form标签内。只有放到form标签内的标签才可能会被提交到服务器,form之外的input等标签被忽略。[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: