zoukankan      html  css  js  c++  java
  • http访问中GET和POST的原理解析

    1.HTTP有几种请求方法:

      在HTTP1.1中总共定义了8种方法:

      在HTTP1.0中,定义了三种请求方法:GET,POST和HEAD方法。

      在HTTP1.1中,新增了五种请求方法:OPTINOS,PUT,DELETE,TRACE和CONNECT方法。

      但我们常用的就是get和post方法

    2.GET和POST两种请求方法都有哪些区别?

      1.get的传递参数是放在url中的,而post的请求方式是放在request body中的,所以post比get更安全。

      2.get传递的参数有大小限制,在2k以下,post参数在2G以下。

      3.get请求只能进行url编码( application/x-www-form-urlencoded),而post支持多种编码格式

      4.get请求会被浏览器主动缓存,而post不会,除非手动设置。

    3.GET请求有request body吗,如果有的话,可以像post一样放在里面吗?

      因为GET和POST都是基于TCP/IP的底层通信协议,所以在技术上get也是可以加入request body的,但是由于上层的HTTP协议的不同,导致服务器不一定能够解析到request body

    4.GET请求的参数写法是固定的吗?

      在约定中我们是将参数写在?后面,使用&分割,但是也可以自己定义,但是需要服务器端进行相应的解析处理。

    5.POST比GET方法更加安全,这种说法对吗?

      不对,因为HTTP在网络上都是明文传输的,所以并不完全安全,如果要安全传输,只有加密,也就是使用HTTPS。

    6.GET和POST请求发送的数据包有什么不同?

      GET请求时产生一个TCP数据包,POST请求时产生两个TCP数据包。

      GET:浏览器会把http header和data一并发送过去,服务器返回200(返回数据)

      POST:浏览器先发送header,服务器响应100 connect,浏览器再发送data,服务器响应200 OK(返回数据)

      

  • 相关阅读:
    [转载]HAO123的迷思——谈谈SEO
    [转]软件版本命名规范
    [转载]万能讲话稿
    世界各国(地区)货币名称及其进位制
    [转载]SDK相关概念
    MeteoInfoJava解析与绘图教程(六)
    MeteoInfoJava解析与绘图教程(七)_图层添加站点名称或区域名称
    测试工具备查
    背景样式
    38年一遇的双七夕,今天你怎样过情人节?
  • 原文地址:https://www.cnblogs.com/wk-missQ1/p/15215632.html
Copyright © 2011-2022 走看看