常用各类请求区别记录

Author Avatar
没饲养员的猩猩 01月 12,2021
  • 在其它设备中阅读本文章

get请求

  • 浏览器回退不会再次发请求
  • 请求产生的URL地址可以被书签记录
  • 请求会被浏览器主动cache
  • 请求只能进行url编码参数只接受ASCII字符
  • 请求参数会被完整保留在浏览器历史记录里
  • 参数直接暴露在URL上,传递敏感信息不安全
  • 请求只产生一个tcp数据包
  • 请求在URL中传送的参数是有长度限制的
    客户端限制:
    IE浏览器的url长度限制为2083字符
    火狐浏览器的url长度限制为65536字符
    chrome谷歌的url长度限制为8182字符
    Safari浏览器的url长度限制为80000字符
    Opera浏览器的url长度限制为190000字符
    服务端限制:
    ApacheApache能接受url长度限制为8192字符
    IIS能接受url长度限制为16384个字符-可调
    ngnix默认8192字符-可调

post请求

  • 浏览器回退不会再次发请求
  • 请求不会被浏览器主动cache
  • 请求支持多种编码方式
  • 请求中的参数不会保留在历史记录中
  • 参数存在Request body中
  • 请求只产生一个tcp数据包
  • 请求在URL中传送的参数是有长度限制的
  • 一个请求正常会产生两个tcp数据包(火狐好像是一个)

options请求

  • 获取服务器支持的HTTP请求方法,用来检查服务器的性能。
  • 跨域请求预检

head请求

  • 检查资源,超链接的有效性。
  • 获取网页标志信息,检查网页是否被串改。

put请求

  • 请求不会由于网络原因导致重复提交
  • 请求会完全替换原资源,多次的PUT更新是完全幂等的
  • 请求本身不存在验证机制
  • 语义化

delete请求

  • 请求常用于删除资源
  • 语义化

connect请求

  • 没用过

trace请求

  • 没用过