• HTTP 请求方式: GET和POST的比较


    GET和POST是HTTP的两个常用方法。
     
    什么是HTTP?
    超文本传输协议(HyperText Transfer Protocol -- HTTP)是一个设计来使客户端和服务器顺利进行通讯的协议。
    HTTP在客户端和服务器之间以request-response protocol(请求-回复协议)工作。
     
    GET - 从指定的服务器中获取数据
    POST - 提交数据给指定的服务器处理
     
    GET方法:
    使用GET方法时,查询字符串(键值对)被附加在URL地址后面一起发送到服务器:
    /test/demo_form.jsp?name1=value1&name2=value2
    特点:
    • GET请求能够被缓存
    • GET请求会保存在浏览器的浏览记录中
    • 以GET请求的URL能够保存为浏览器书签
    • GET请求有长度限制
    • GET请求主要用以获取数据
    POST方法:
    使用POST方法时,查询字符串在POST信息中单独存在,和HTTP请求一起发送到服务器:
    POST /test/demo_form.jsp HTTP/1.1
    Host: w3schools.com
    name1=value1&name2=value2
    特点:
    • POST请求不能被缓存下来
    • POST请求不会保存在浏览器浏览记录中
    • 以POST请求的URL无法保存为浏览器书签
    • POST请求没有长度限制
    GET和POST的区别:
      GET POST
    点击返回/刷新按钮 没有影响 数据会重新发送(浏览器将会提示用户“数据被从新提交”)
    添加书签 可以 不可以
    缓存 可以 不可以
    编码类型(Encoding type) application/x-www-form-urlencoded
    application/x-www-form-urlencoded or multipart/form-data. 请为二进制数据使用multipart编码
    历史记录 没有
    长度限制 没有
    数据类型限制 只允许ASCII字符类型 没有限制。允许二进制数据
    安全性 查询字符串会显示在地址栏的URL中,不安全,请不要使用GET请求提交敏感数据 因为数据不会显示在地址栏中,也不会缓存下来或保存在浏览记录中,所以看POST求情比GET请求安全,但也不是最安全的方式。如需要传送敏感数据,请使用加密方式传输
    可见性 查询字符串显示在地址栏的URL中,可见 查询字符串不会显示在地址栏中,不可见
    其他HTTP请求方式
    方式 描述
    HEAD 与GET请求类似,不同在与服务器只返回HTTP头部信息,没有页面内容
    PUT 上传指定URL的描述
    DELETE 删除指定资源
    OPTIONS 返回服务器支持的HTTP方法
    CONNECT 转换为透明TCP/IP隧道的连接请求
     

     
  • 相关阅读:
    FZU 2150 Fire Game
    POJ 3414 Pots
    POJ 3087 Shuffle'm Up
    POJ 3126 Prime Path
    POJ 1426 Find The Multiple
    POJ 3278 Catch That Cow
    字符数组
    HDU 1238 Substing
    欧几里德和扩展欧几里德详解 以及例题CodeForces 7C
    Codeforces 591B Rebranding
  • 原文地址:https://www.cnblogs.com/igeneral/p/3641574.html
Copyright © 2020-2023  润新知