form表单method方法的使用

上传人:206****923 文档编号:40450753 上传时间:2018-05-26 格式:DOCX 页数:3 大小:21.04KB
返回 下载 相关 举报
form表单method方法的使用_第1页
第1页 / 共3页
form表单method方法的使用_第2页
第2页 / 共3页
form表单method方法的使用_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《form表单method方法的使用》由会员分享,可在线阅读,更多相关《form表单method方法的使用(3页珍藏版)》请在金锄头文库上搜索。

1、一、get 和 post 定义form 元素的 method 属性用来指定发送 form 的 http 方法;使用 get 时,form 数据集被附加到 form 元素的 action 属性所指定的 URL 后面;使用 post 时,form 数据集被包装在请求的 body 中并被发送。使用 get 提交方式,生成 URL:user.do?loginId=abcget 仅仅是拼接一个 URL,然后直接向服务区请求数据,需要提交给服务器的数据集包含在 URL 中。使用 post 提交方式,生成 URL:user.dopost 会把 form 的数据集,即 loginId=abc 这个键值对包装在

2、请求的 body 中,发给服务器,然后向服务器请求数据。二、get 和 Post 的区别1、安全性如果用 get 提交一个验证用户名和密码的 form,一般认为是不安全的,因为用户名和密码将出现在URL 上,进而出现在浏览器的历史记录中。显然,在对安全性有要求的情况下,应该使用 post。2、编码get 只能向服务器发送 ASCII 字符,而 post 则可以发送整个 ISO 10646 中的字符。get 和 post 对应的 enctype 属性有区别。enctype 有两个值,默认值为 application/x-www-form-urlencoded(在发送前编码所有字符)另一个是 mu

3、ltipart/form-data(用于文件上传)只能用于 post。3、提交数据的长度。IE 将请求的 URL 长度限制为 2083 个字符,从而限制了 get 提交的数据长度,如果 URL 超出了这个限制,提交 form 时 IE 不会有任何反映。4、缓存由于一个 get 得到的结果直接对应到一个 URL,所以 get 的结果页面有可能被浏览器缓存,而 post 一般不能。5、引用和 SEO 可以用一个 URI 引用一个 get 的结果页面,而 post 的结果则不能,所以必然不能被搜索引擎搜到。最本质的区别:1、Get 是用来从服务器上获得数据,而是用来从服务器上获得数据,而 post

4、是用来向服务器上传递数据是用来向服务器上传递数据如果采用 Post 方法,浏览器将会按照下面两步来发送数据。首先浏览器将 action 属性中指定的表单处理服务器建立联系,一旦建立连接之后,浏览器就会按分段传输的方法将数据发送给服务器。在服务器端,一旦 Post 样式的应用程序开始执行时,就应该从一个标志位置读取参数,而一旦读到参数,在应用程序能够使用这些表单值以前,必须对这些参数进行解码,用户特定的服务器会明确指定应用程序应该如何接受这些参数。采用 Get 方法:浏览器会直接与表单处理服务器建立连接,然后直接在一个传输步骤中发送所有的表单数据,然后直接在一个传输步骤中发送所有的表单数据。2、

5、Get 将表单中数据的按照 variable=value 的形式,添加到 action 所指向的 URL 后面,并且两者使用“?”连接,而各个变量之间使用“&”连接;Post 是将表单中的数据放在 form 的数据体中,按照变量和值相对应的方式,传递到 action 所指向 URL。三、正确的使用 get 和 post 当且仅当 form 是幂等的时候,使用 get。 幂等:多次相同的请求产生的副作用,和一次请求的副作用相同。 如果提交请求纯粹只是从服务器端获取数据而不是进行其他操作,并且多次提交不会有明显的副作用,应该使用 get。 比如:搜索引擎的查询(http:/ 如果提交这个请求会产生

6、其他操作和影响,就应该使用 post。 比如:修改服务器上数据库中的数据;发送一封邮件;删除一个文件等 另一个要考虑因素是安全性。 若符合下列任一情况,则用 post 方法: a.请求的结果有持续性的副作用,例如:数据库内添加新的数据行。 b.若使用 get 方法,则表单上收集的数据可能让 URL 过长。 c.要传送的数据不是采用 ASCII 编码。 若符合下列任一情况,则用 get 方法: a.请求是为了查找资源,html 表单数据仅用来搜索。 b.请求结果无持续性的副作用。 c.收集的数据及 html 表单内的输入字段名称的总长不超过 1024 个字符。 四、浏览器差异 IE6:URL 长

7、度限制为 2083 个字符;post 之后,刷新页面不会自动重新 post 数据,会出现警告。 IE7 和 IE6 相同。 Firefox:刷新页面不会自动重新 post 数据会出现警告。post 和 get 容易忽视的一点差别:就是当 method 为 get 时,action 属性中 URL 后面的参数是忽视的。例如:action=insert.jsp?name=tobby method=get,当我们提交之后真正的 url 中是没有 name=tobby 的,他会根据表单中的内容重新组装成一个 url 的,假如 form 中有一个文本框,那么 url 会变成 insert.jsp?addresswuhan.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号