你的位置:首页 > ASP.net教程

[ASP.net教程]一般处理程序、ASP.NET核心知识(5)


初窥


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

clipboard

新建一个一般处理程序

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;

            }

        }

    }

clipboard[1]

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

关于请求方式(form表单)


1.form的几个属性

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

2.GET和POST

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

clipboard[2]

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

clipboard[3]

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


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