HTML中get 和post 的区别(转)
2015-11-08 23:42
507 查看
当用户在 HTML 表单 (HTML Form) 中输入信息并提交之后,有两种方法将信息从浏览器传送到 Web 服务器 (Web Server)。
一种方法是通过 URL,另外一种是在 HTTP Request 的 body 中。
前一种方法,我们使用 HTML Form 中的 method = "get",后一种方法我们使用 HTML Form 中的 method ="post"。
例句如下:
<form action = "..." method = "get">
<from action = "..." method = "post">
通过 get 或者 post 方法都可以获得 Form 的数据,两者主要区别在于以下几方面:
Get
URL 改变,在URL 里显示 HTML Form 参数的 name/value 值。
只适合有少量参数的 HTML Form,因为 URL 长度有字符
涉及安全性的信息,比如用户密码,不能用 get,因为会在 URL 上显示,不安全。
Post
URL 不改变,不在 URL 里显示 HTML Form 的数据。
Form 提交的信息没有长度
涉及安全性的信息,如用户密码,应采用 post 方式。
我们看看 get 是如何提交 Form 数据的。我们先写一个 HTML 文件,如下:
<html>
<head><title>Blablar.com HTML Form Method Get Example</title></head>
<body>
<form action ="get.php" method ="get">
Name: <input type="text" name="username" />
<input type ="submit" value="ok" />
</form>
</body>
</html>
你可以看到在浏览器地址栏里的URL是: http://localhost:8080/get.php?username=Jacky 注意get.php后面的字符串 ?username=Jacky,这是一对 name/value 数据,前面加一个问号。
如果你将 form 改成 method = "post",你在浏览器地址栏就看不到这对 name/value 数据,而只有: http://localhost:8080/get.php 使用 get 时,第一对 name/value 值前要加一个问号? ,以后每对 name/value 值则要用 & 分开。比如一个 form中有三个参数,如下:
<form action ="u.php" method ="get">
Name: <input type="text" name="username" />
Age: <input type="text" name="age" />
Gender: <input type="text" name="gender" />
<input type ="submit" value="ok" />
</form>
比如你在Name 项填写Jacky,Age项填写50,Gender项填了male,提交之后的 URL 显示为: http://localhost:8080/get.php?username=Jacky&age=50&gender=male
一种方法是通过 URL,另外一种是在 HTTP Request 的 body 中。
前一种方法,我们使用 HTML Form 中的 method = "get",后一种方法我们使用 HTML Form 中的 method ="post"。
例句如下:
<form action = "..." method = "get">
<from action = "..." method = "post">
通过 get 或者 post 方法都可以获得 Form 的数据,两者主要区别在于以下几方面:
Get
URL 改变,在URL 里显示 HTML Form 参数的 name/value 值。
只适合有少量参数的 HTML Form,因为 URL 长度有字符
涉及安全性的信息,比如用户密码,不能用 get,因为会在 URL 上显示,不安全。
Post
URL 不改变,不在 URL 里显示 HTML Form 的数据。
Form 提交的信息没有长度
涉及安全性的信息,如用户密码,应采用 post 方式。
我们看看 get 是如何提交 Form 数据的。我们先写一个 HTML 文件,如下:
<html>
<head><title>Blablar.com HTML Form Method Get Example</title></head>
<body>
<form action ="get.php" method ="get">
Name: <input type="text" name="username" />
<input type ="submit" value="ok" />
</form>
</body>
</html>
你可以看到在浏览器地址栏里的URL是: http://localhost:8080/get.php?username=Jacky 注意get.php后面的字符串 ?username=Jacky,这是一对 name/value 数据,前面加一个问号。
如果你将 form 改成 method = "post",你在浏览器地址栏就看不到这对 name/value 数据,而只有: http://localhost:8080/get.php 使用 get 时,第一对 name/value 值前要加一个问号? ,以后每对 name/value 值则要用 & 分开。比如一个 form中有三个参数,如下:
<form action ="u.php" method ="get">
Name: <input type="text" name="username" />
Age: <input type="text" name="age" />
Gender: <input type="text" name="gender" />
<input type ="submit" value="ok" />
</form>
比如你在Name 项填写Jacky,Age项填写50,Gender项填了male,提交之后的 URL 显示为: http://localhost:8080/get.php?username=Jacky&age=50&gender=male
相关文章推荐
- 转: html表单中get方式和post方式的区别
- 初识HTML(1)
- 如何解决HTML在各种浏览器的兼容性
- 常用HTML标签显示效果
- HTML中如何对DIV使用列布局(两列三列等)
- position的用法
- 关于HTML你可能不知道的一些知识点
- html的meta总结,html标签中meta属性使用介绍
- [常用技巧]Url转义/Html转义/C#转义
- 控制html的编辑框只能输入整数
- .NET mvc 中遇到 cshtml无法打开,编译异常情况处理方法
- HTML 定时页面跳转
- HTML中表格固定列锁定
- HTML-表单标签(*****)
- HTML-表格标签
- HTML-超链接标签
- html向flash传递参数
- html如何超链接到servlet
- HTML标识符
- 在win7系统下如何修改文件后缀名?win7修改文件后缀名html方法