GET和POST的区别

来源:互联网 发布:天津网络歌曲 编辑:程序博客网 时间:2024/06/07 14:01
现在HTTP采用的是1.1版本的协议,有八种请求方式:
  • GET:向特定的资源发出请求。注意:GET方法不应当被用于产生“副作用”的操作中。例如在web app中。其中一个原因是GET可能会被网络蜘蛛等随意访问。
  • POST:向指定资源提交数据进行处理请求(例如提交表单或上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源被建立或已有资源被修改。
  • OPTIONS:返回服务器针对特定资源所支持的HTTP请求方法,也可以利用向Web服务器发送'*'的请求来测试服务器的功能。
  • HEAD:向服务器所要与Get请求相一致的响应。只是响应体将不会被返回。这一方法可以再不必传输整个响应内容的情况下就可以获取包含在响应消息头中的元信息。
  • PUT:向指定资源位置上传其最新内容。
  • DELETE:请求服务器删除Request-URL所标识的资源。
  • TRACE:回县服务器收到的请求,主要用于测试或诊断。
  • CONNECT:HTTP/1.1协议中预留给能够连接为管道方式的代理服务器,HTTP/1.0协议中没有这种请求方式。

我们常用的就两种方式:GET、POST。

GET方式:

GET方式是默认的HTTP请求方法,这种方式仅仅将提交的数据简单的编码,且作为URL的一部分("?"后面的内容)向Web服务器发送,例如:Http://localhost:8080/login.jsp?Name=zhangshi&Age=30&Submit=%cc%E+%BD%BB。所以说GET方法提交表单数据室不安全的,通过URL很容易的辨认出来表单提交的内容。还有,既然GET提交的数据作为URL的一部分,所以这种方式提交的数据量不能太大。超级链接是GET方式请求。


特点
  • 不安全,容易被识别提交的数据
  • 提交的数据量不大,所以提交表单数据时不采用这种方式

POST方式:
POST方式是GET方式的替代方式,主要用于提交表单数据,尤其是大批量的表单数据。POST方式克服了GET方式的一些缺点,因为POST方式提交的数据不会作为URL的一部分,而是作为标准数据传送给Web服务器,这样就克服了GET方式中数据不安全和数据量太小的缺点。

GET与POST的区别
  • GET方式会将提交的数据作为URL的一部分发送给服务器;POST不会
  • 从编程的角度讲,GET方式提交的数据存放在QUERY_STRING环境变量中,POST方式提交的数据则从标准输入流中获取

原创粉丝点击