`
wangjunwj
  • 浏览: 38783 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

表单提交中Get和Post 方式的区别

阅读更多
表单提交中Get和Post 方式的区别:
   1. get是从服务器上获取数据,post是向服务器传送数据。
   2. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。
   3. 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。
   4. get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB。
   5. get安全性非常低,post安全性较高。

HTTP请求:GET与POST 方法的区别
HTTP 定义了与服务器交互的不同方法,最基本的方法是 GET 和 POST 。事实上 GET 适用于多数请求,而保留 POST 仅用于更新站点。根据 HTTP 规范,GET 用于信息获取,而且应该是安全的和幂等的。所谓安全的意味着该操作用于获取信息而非修改信息。换句话说,GET 请求一般不应产生副作用。幂等的意味着对同一 URL 的多个请求应该返回同样的结果。完整的定义并不像看起来那样严格。从根本上讲,其目标是当用户打开一个链接时,她可以确信从自身的角度来看没有改变资源。比如,新闻站点的头版不断更新。虽然第二次请求会返回不同的一批新闻,该操作仍然被认为是安全的和幂等的,因为它总是返回当前的新闻。反之亦然。POST POST 表示可能改变服务器上的资源的请求。仍然以新闻站点为例,读者对文章的注解应该通过 POST 请求实现,因为在注解提交之后站点已经不同了(比方说文章下面出现一条注解); 请求就不那么轻松了。
在FORM提交的时候,如果不指定Method,则默认为GET 请求,Form中提交的数据将会附加在url之后,以?分开与url分开。字母数字字符原样发送,但空格转换为“+“号,其它符号转换为%XX,其中XX为该符号以16进制表示的ASCII(或ISO Latin-1)值。GET请求请提交的数据放置在HTTP请求协议头中,而POST 提交的数据则放在实体数据中;GET方式提交的数据最多只能有1024字节,而POST 则没有此限制。

通过get方法提交数据,可能会带来安全性的问题。比如一个登陆页面。当通过get方法提交数据时,用户名和密码将出现在URL上。如果:
1、 登陆页面可以被浏览器缓存;
2、 其他人可以访问客户的这台机器。
那么,别人即可以从浏览器的历史记录中,读取到此客户的账号和密码。所以,在某些情况下,get方法会带来严重的安全性问题。
建议在Form中,建议使用post 方法。
0
0
分享到:
评论
1 楼 itcyt 2011-09-13  
       

相关推荐

    表单提交中get和post的区别

    在Web开发中,表单提交是非常常见的一种交互方式,而在表单提交中,get和post是两种常用的提交方式。它们之间的区别是每个Web开发者都需要了解的。 首先,让我们来了解一下get和post的基本概念。Get是从服务器上...

    C# post方式提交Form表单

    本篇文章将深入探讨如何在C#中通过POST方式提交Form表单,包括其原理、步骤和实际代码示例。 一、POST提交表单的基本原理 POST是HTTP协议中的一个方法,用于向服务器发送数据,特别是当数据量较大或者包含敏感信息...

    浅析Get与Post的区别

    Get和Post是两种常用的表单提交方式,在Web开发中经常被使用。但是,很多人并不了解这两种方式的区别,导致在实际开发中出现问题。本文将详细阐述Get和Post的区别,以便读者更好地理解和使用这两种方式。 Get方式 ...

    J2EE以GET和POST方式提交表单的乱码解决(受教了)

    下面我们将深入探讨如何解决J2EE环境下GET和POST方式提交表单时出现的乱码问题。 首先,我们要理解GET和POST的区别。GET方式会将表单数据附加到URL后面,而POST方式则将数据放在请求体中。由于GET方式的限制,它...

    Http协议中POST和GET方法的本质区别

    HTTP中的POST和GET方法是两种最常用于网页开发的数据传输方式,它们在原理和表现形式上存在本质区别。 首先,从原理上看,GET方法通常用于获取资源信息,它通过URL来传递参数,URL全称为资源描述符,表示网络上的一...

    ajax POST 与GET提交的区别

    在探讨AJAX中GET和POST的区别之前,我们先来了解一下这两种请求方式的基本概念。 **GET**请求通常用于获取资源信息,它将参数拼接到URL后面,并通过URL传输数据。这种方式适合于那些不会更改服务器状态的操作,例如...

    jsp中post和get传输方式的区别

    - POST:使用HTML表单(`<form>`)中的数据提交方式,如`<form action="http://example.com/page" method="post">`。表单中的数据会被编码成名称/值对,但这些数据不会出现在URL中。 2. **安全性:** - GET:由于...

    Servlet表单Get和Post方式读取

    在这个"Servlet表单Get和Post方式读取"的主题中,我们将深入探讨如何使用Servlet来接收和处理来自HTML表单的GET和POST请求。 首先,让我们了解GET和POST这两种HTTP方法的基本概念: 1. GET方法:这是HTTP请求中最...

    GET与POST的区别

    "GET与POST的区别" GET和POST是HTTP协议中两种最常用的请求方法,它们都是用来从客户端向服务器端发送请求的,但它们之间有很多不同之处。 GET方法 GET方法是从服务器上获取数据的请求方法。它的主要特点是将参数...

    get和post的区别

    ### GET与POST方法的区别 在Web开发中,GET与POST是最常见的两种HTTP请求方式,它们在功能、安全性、数据传输等方面存在显著差异。本文将基于提供的文件内容对这两种方法进行详细解析。 #### 1. 基本概念 - **GET...

    java中用URLConnection_类post方式提交表单

    java中用URLConnection类post方式提交表单是指在java应用程序中使用java.net.URLConnection类来实现POST方式的表单提交。POST方式是HTTP协议中的一种常见的请求方法,它允许客户端向服务器发送数据。下面是使用...

    C#POST_GET表单提交

    /// HTTP POST方式请求数据. /// /// <param name="url">URL. /// <returns></returns> public static string HttpPost(string Url, string postDataStr) { HttpWebRequest request = (HttpWebRequest)...

    qt post,get进行表单提交的demo

    2. POST和GET请求的区别及其在Qt中的实现方式。 3. 如何设置HTTP头字段,特别是Content-Type,以正确地发送表单数据。 4. 如何处理网络响应,包括数据读取和错误检查。 5. 使用Qt进行网络编程的基本步骤和注意事项。...

    安卓网络通信之通过GET和POST方式提交参数给web应用

    本文将详细介绍如何在Android中使用GET和POST方式来提交参数给Web应用。 首先,GET方法是HTTP中最简单的请求方式,常用于获取资源。在Android中,我们可以使用`HttpURLConnection`或者第三方库如`Volley`、`OkHttp`...

    模拟表单post提交

    当涉及到网页表单的提交时,通常有两种主要的方法:GET和POST。GET用于获取资源,而POST用于向服务器发送数据,如用户填写的表单信息。Java作为一个强大的后端开发语言,提供了多种库来帮助开发者模拟表单的POST提交...

    Ajax中get与post请求详解

    1. 参数传递方式:get 请求将参数数据队列加到提交表单的 ACTION 属性所指的 URL 中,而 post 请求通过 HTTP post 机制,将表单内各个字段与其内容放置在 HTML HEADER 内一起传送到 ACTION 属性所指的 URL 地址。...

    VB6Get和POST请求异步处理请求

    在VB6(Visual Basic 6)编程环境中,GET和POST是两种主要的HTTP请求方法,用于从Web服务器获取数据或提交数据。这两种方法在进行网络通信时起着至关重要的作用,尤其是在开发基于Web的应用程序时。然而,在进行同步...

    html页面模式get/post请求

    通过设置`method`属性,我们可以指定表单使用GET还是POST方式提交数据。例如: ```html <form action="your-api-url" method="post"> <!-- 输入字段 --> <!-- 提交按钮 --> 提交 ``` 对于POST请求,特别是...

    get、post区别

    在处理中文或其他非ASCII字符时,GET和POST的处理方式有所不同: - **GET**:数据会进行URL编码,将非ASCII字符转换为"%xx"的形式,其中"xx"是该字符的十六进制表示。这通常会导致中文等多字节字符在URL中显示为乱码...

Global site tag (gtag.js) - Google Analytics