get和post的区别

get和post的区别

  1,Get中数据大小被限制:我们都知道很多老式浏览器把URL的字符串个数被限制在255个之内;虽然现在的新版浏览器早就没有这个蛋疼的限制,但是我们可不敢保证所有来站点访问的用户都是使用新版浏览器的。所以当我们需要用户在网页中填写一些信息时,使用Get方式肯定会出问题。相反Post方法中没有这个限制,我们可以传输任意大小的数据。

  2,Get中的数据类型不灵活:因为Get是使用url来传输数据的,那么比如空格字符以及类似&这样的字符就不方便传输。我们可以使用发送前编码,以及接受后解码的方法来解决。

  3,安全性:在Get中,参数是以名值对的查询字符串挂接在url后缀来传输的,所以这个非常容易被浏览器历史记录中查询到。所有的数据也都是以文本方式提交,所以我们知道比如登录操作的密码是绝对不能使用Get方式来提交。

  相反,Post方法就安全多了。所有的名值对都是以消息体的方式在Http Request的方式传输。

  4,速度:显然Get比Post要快。

  5,书签:其实有几个情况下用Get更好,比如你能将名值对参数以书签的方式存储并直接在子啊表单中使用。但在Post下是无法做到的。

  6,以表单方式上传文件只能使用 Post 方式实现,Get几乎不可能。

  7,在服务器对Get方式提交的数据编码时可能会数据丢失。但对于Post是不会的。

  8,Get使用栈方法传输表单变量,而Post使用HEAP方法来传输表单变量。

  9,Get最多也就一次性传输18个参数而Post没有这个限制。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/109784.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • java中数组转列表_Java数组转list

    java中数组转列表_Java数组转list1.javajdk提供的Arrays.asList(T…a)方法publicstaticvoidmain(String[]args){String[]strArray={“a”,”b”,”c”};List<String>strList=Arrays.asList(strArray);Sy…

  • java权限拦截器

    java权限拦截器SecurityInterceptor.javapackagelight.mvc.framework.interceptors;importjava.util.List;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importlight.

  • Java获取当前时间年月日_JS得出当前年月日时间的代码

    Java获取当前时间年月日_JS得出当前年月日时间的代码packagecom.ob;importjava.text.ParseException;importjava.text.SimpleDateFormat;importjava.util.Calendar;importjava.util.Date;publicclassDateTest{ publicstaticvoidmain(String[]args)

    2022年10月26日
  • 数据库导出表结构语句_sqlserver导出表结构

    数据库导出表结构语句_sqlserver导出表结构第一种:利用sql语句查询需要说明的是该方法应该适用很多工具,博主用的是navicatSELECTTABLE_NAME表名,COLUMN_NAME列名,COLUMN_TYPE数据类型,DATA_TYPE字段类型,CHARACTER_MAXIMUM_LENGTH长度,IS_NULLABLE是否为空…

  • php小程序开发完整教程_微信小程序request封装

    php小程序开发完整教程_微信小程序request封装flyio:一个支持所有JavaScript运行环境的基于Promise的、支持请求转发、自动转换JSON、支持请求/响应拦截器、强大的http请求库。可以让您在多个端上尽可能大限度的实现代码复用。flyio官方文档flyio下载地址原生微信小程序中使用flyio请求,封装代码如下一、在src/utils下新建request.js文件,文件代码如下:/*flyio:一个支持所有JavaScript运行环境的基于Promise的、支持请求转发、强大的http请求库。可以让您在多

  • vm安装centos7蓝屏「建议收藏」

    vm安装centos7蓝屏「建议收藏」vm安装centos7蓝屏最近有同学购买了最新款英特尔11代的笔记本,使用vm安装centos7系统

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号