• GET与POST的区别


    他们两个都是HTTP请求报文的两种方式,当然除了这两种请求方式外还有其他的请求方式,下面我们来看一下他们之间的区别

    一、 GET重点是从服务区上申请资源,即get请求对服务端不会造成影响。

    POST重点是向服务器发送数据,通过post提交可能对服务器端有影响,比如我们平时发微博,写评论。

    二、 GET传送数据是通过URL,以键值对的形式置于URL后面,并且用?隔开,若有多个键值对则用&符号链接

    POST传输是通过表单将键值对封存于请求实体中

    三、 GET传输的数据是有限的,因为URL对字符长度是有限制的

    POST理论上可以传输很多数据,但实际上web服务器对其也做了限制,

    四、 GET是不安全的,传送数据的过程是可见的,因为传送的数据在url中显示

    POST是相对安全的,传送数据的过程是不可见的

    五、 GET只支持ASCII码字符,向服务器传送中文字符可能会出现乱码

    POST支持标准字符集。

    下面再来说一下他们在编码上的区别,下面是针对于在tomcat服务器上运行,tomcat服务器默认的编码是iso-8859-1编码方式,该编码是不支持中文的,所以在实际开发中就需要进行编码的转换,下面针对get方法和post方法提交数据的解决办法:

    一、 该方法对get和post都适用

    首先对相应的字符进行iso-8859-1编码,在进行UTF-8解码

    例如; newStr=new String(oldStr.getBytes(“iso-8859-1”),”UTF-8”)

    后面的参数UTF-8是与请求端的编码方式是一致的,大体的一个过程如下:

    Utf-8编码-------iso-8859-1解码------- iso-8859-1编码--------utf-8编码

    二、 该方法只对post请求有效,通过tomcat获取到的请求来设置

    req.setCharacterEncoding(“UTF-8”);

    心有多大,天有多高,一起奋斗!!
  • 相关阅读:
    一个500人使用的后台服务站点优化过程
    关于一个每天请求50W次接口的设计实现过程
    Exception in thread "main" java.lang.NoSuchMethodError: scala.actors.AbstractActor.$init$(Lscala/actors/AbstractActor;)V
    搭建hadoop集群的免密钥登录配置
    Hive入门小结
    Jvm垃圾收集器和垃圾回收算法
    Java内存区域与对象创建过程
    得到直播,宁向东的清华管理学课。
    pandas中merge的使用
    少看别人写的文章,多看优秀的代码
  • 原文地址:https://www.cnblogs.com/zhaolei1996/p/10732753.html
Copyright © 2020-2023  润新知