Asp.Net总结(二)Form
来源:互联网 发布:淘宝定向流量包 编辑:程序博客网 时间:2024/05/20 23:06
之前在看视频时一直都没有给予表单足够的重视,有些盲目了。光是去比较get和post,却不知道是他们是谁的属性,提交的到底是什么。这篇博客介绍一下表单和表单的相关易混点。
1.表单
找了很多的资料,对于表单也没有明确的概念。百度百科上如是说:“表单在网页中主要负责数据采集功能。”我们将向服务器端发送的数据或信息放在表单中。
一个表单有三个基本组成部分:表单标签:这里面包含了处理表单数据所用CGI程序的URL以及数据提交到服务器的方法。 表单域:包含了文本框、密码框、隐藏域、多行文本框、复选框、单选框、下拉选择框和文件上传框等。表单按钮:包括提交按钮、复位按钮和一般按钮;用于将数据传送到服务器上的CGI脚本或者取消输入,还可以用表单按钮来控制其他定义了处理脚本的处理工作。其中的隐藏域在Asp.Net总结ViewState中多次提到过。举个代码就更明白了什么事表单标签、表单域和表单按钮了。
- <form action="GetUserInfo.aspx" method="get"> '表单标签
- <table border="1" width="400px">
- <tr><td colspan="2">用户注册</td></tr>
- <tr><td>用户名</td><td><input type="text" name="username" /></td></tr> '表单域
- <tr><td>密码</td><td><input type="password" name="pwd" /></td></tr> '表单域
- <tr><td><input type="submit" value="提交" /></td><td><input type="reset" value="重置" /></td></tr> '表单按钮
- </table>
- </form>
在服务器端运行的表单,一个页面只能有一个。
2.表单的主要属性
表单的主要属性有两个:method和action.
action属性:必需的 action 属性规定当提交表单时,向何处发送表单数据。默认为提交给自己。
method属性:默认值为get。浏览器使用method 属性设置的方法将表单中的数据传送给服务器进行处理。共有两种方法:POST 方法和 GET 方法。
这里有必要比较一下这两种方法的区别:GET请求的数据会附在URL之后(就是把数据放置在HTTP协议头中),以?分割URL和传输数据,参数之间以&相连.如:
login.action?name=hyddd&password=idontknow&verify=%E4%BD%A0%E5%A5%BD。POST把提交的数据则放置在是HTTP包的包体中。
a.通过GET提交数据,用户名和密码将明文出现在URL上,安全性没有post方法高,但是get方法很方便,直接定义一个URL就可以了。
b.由于浏览器的显示字符的长度是有限制的,所以采用get方法的URL太长的话就会受到限制,而post则没有。
3.相关易混点
针对get方法获取本页值的方式有:Request["xxx"];Request.QueryString[“xxx”];Request.QueryString.Get("xxx");
针对post方法获取本页值的方式有:Request["xxx"];Request.Form["xxx"];Request.Form.Get("xxx");
Request的集合有QueryString、Form、Cookies、ClientCertificate、ServerVarible,使用Request["xxx"]时request会按顺序搜索全部的集合直到发现第一个匹配值的名称,这样做的集合效率低,并且是不安全的。尽量避免这样的写法。Request.Form["xxx"]和Request.Form.Get("xxx")指明了是form集合,针对post方法获取页面值。二者实现的效果是一样的。Request.Form返回的是NameValueCollection类型对象,该类型对象有Get方法。所以Request.Form[]和Request.Form.Get()是相同的。需要注意的是集合后面使用的中括号。
Request.QueryString[“xxx”];Request.QueryString.Get("xxx")同理。
学习了表单,我一直都有一个疑问:难道客户端和服务器之间的交互就只有使用表单吗?这个问题我找过资料,可以说是没有收获。请牛人指点。
- Asp.Net总结(二)Form
- Asp.net总结(二)
- 学习ASP.NET的总结(二)
- 【ASP.NET北大青鸟】-总结(二)
- 【Dongle】【ASP.NET】Web总结(二)
- asp.net form 身份验证--不使用membershipprovider和rolesprovider(二)
- JQuery按照form上传文件+asp.net后台处理(二)
- ASP.NET:Form提交中文乱码的解决方法总结
- ASP.NET进阶(1):form是什么?
- ASP.NET 安全认证(Form 认证)
- 天气预报(asp.net web form)
- ASP.NET Web Form(八)
- asp.net form验证
- asp.net form验证
- asp.net form验证
- asp.net form验证
- Asp.Net Form身份验证
- asp.net form验证
- 关于XML字符串和XML Document之间的转换
- Xmind启动报错
- redhat安装VNC
- 将项目打包成jar与生成对应的api帮助文档(也就是注解)
- tomcat server.xml配置详解
- Asp.Net总结(二)Form
- [转]MPI cluster技术简介与鸟哥的架设实例
- 新年规划
- 冒泡排序 java
- js正则表达式
- 列式数据库总结(特点)
- A20 Bull(A20金牛)示波器测量红外遥控器客户码
- 质量度
- 天天记录 - Android抓包 - 抓取HTTP,TCP协议数据