get与post是表单发送的两种常用方式。
get
是以实体的方式得到由请求 URL(浏览器地址)所指定资源的信息,例如我们通常浏览一个网页,就是 get 方式。
当我们的表单以 get 方式提交时,那么所有数据都将通过浏览器地址栏的方式体现。我们通过百度查询就是一个例子,查询关键字输入 “周杰伦”,可以看出浏览器地址栏为:
http://www.baidu.com/s?wd=%D6%DC%BD%DC%C2%D7
这个就表示服务器的 s 文件接受了关键字(wd)为 %D6%DC%BD%DC%C2%D7 的查询,而这个 %D6%DC%BD%DC%C2%D7 实际是经过 encode 编码的 “周杰伦” 三个字。
post
通过 HTTP post 机制,将表单内各个字段与其内容放置在 Html Header 内一起传送到表单 action 属性所指的 URLl 地址,用户看不到这个过程。
get 与 post 的应用区别
get 与 post 在应用上的区别大致如下:
- get 方式会把表单数据暴露在浏览器地址栏里,不宜发送敏感数据(如密码);反之 post 安全性则较高。
- get 方式发送的数据量有一定限制,post 则大得多,可以看做是无限制,所以发表留言或者文章等会采用 post 方式。