zoukankan      html  css  js  c++  java
  • POST和GET请求的区别

      HTTP协议定义了与服务器交互的不同方法,最基本的方法有四种,GET,POST,PUT,DELETE。服务的URL地址,用以描述相应的网络资源,而这几种与服务器打交道的方法,实际上就对应了对网络资源的增、删、改、查。

      本篇主要讲述面试过程经常被提问的POST与GET的区别

      一、请求方式

      GET请求:请求的数据会附在URL后面,以?号分隔URL和传输数据,多个参数用&作分隔符,URL的编码格式采用的是ASCII编码,而不是UNICODE编码,如此,所有非ASCII编码的字符都需要经过编码后进行传输。

      POST请求:请求的数据被放置在HTTP请求包的包体中。

      即GET请求的数据会暴露在地址栏中,而POST请求的数据由于在请求体中,故不会直接对用户和游客暴露,如此便涉及到第二点安全性的区别。

      二、安全性

      POST的安全性比GET高。假设在一次登录请求中,通过GET请求,用户名和密码都会暴露在URL上,因为登录页面有浏览器缓存和页面历史记录等原因,此时的用户名和密码就极有可能被恶意用户拿到,故涉及到机密性较高的数据,POST的安全性是GET无法比拟的。

      三、传输数据的大小

      在HTTP规范中,没有对URL的长度和数据传输的大小进行限制。但在实际应用中,特定的浏览器和服务器对URL的长度是有一定限制的。因此使用GET请求,会有URL长度方面的限制。

      对于POST请求,由于不是URL传值,所以不存在URL长度方面的限制,这是其相比GET优势所在,可以传输较大的数据。但在实际应用中,各个服务器都会根据实际情况对POST传输的数据大小进行不同程度的限制。

  • 相关阅读:
    理解svm必看
    SVM中核函数种类与选择(转)
    常用数据的标准化方法 (转)
    matlab归一化&标准化 (转)
    as3+XML读取文件夹图片并显示易错的地方(转自新浪微博)
    As 对象局部坐标转全局坐标
    JS 与 AS3 的通信
    AS3的反射
    LocalConnection实现swf与swf之间通信
    正则表达式元字符速查表
  • 原文地址:https://www.cnblogs.com/jiyukai/p/6936475.html
Copyright © 2011-2022 走看看