栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

解决Springboot get请求是参数过长的情况

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

解决Springboot get请求是参数过长的情况

问题原因

Springboot get请求是参数过长抛出异常:Request header is too large 的问题

错误描述

java.lang.IllegalArgumentException: Request header is too large

解决方案

请求头超过了tomcat的限值。本来post请求是没有参数大小限制,但是服务器有自己的默认大小。

设置服务器大小:

1.普通tomcat

在server.xml中

处加上

maxHttpHeaderSize =”102400”

2.SpringBoot

SpringBoot项目更方便了,在application.properties文件中添加

#请求参数过长设置

server.max-http-header-size=102400

补充知识:JavaWeb - URL 中很长的一串请求参数,为什么不采用 POST 方式?

GET 方法

请注意,查询字符串(名称/值对)是在 GET 请求的 URL 中发送的:

/test/demo_form.asp?name1=value1&name2=value2

有关 GET 请求的其他一些注释:

GET 请求可被缓存

GET 请求保留在浏览器历史记录中

GET 请求可被收藏为书签

GET 请求不应在处理敏感数据时使用

GET 请求有长度限制

GET 请求只应当用于取回数据

POST 方法

请注意,查询字符串(名称/值对)是在 POST 请求的 HTTP 消息主体中发送的:

POST /test/demo_form.asp HTTP/1.1

Host: w3schools.com

name1=value1&name2=value2

有关 POST 请求的其他一些注释:

POST 请求不会被缓存

POST 请求不会保留在浏览器历史记录中

POST 不能被收藏为书签

POST 请求对数据长度没有要求

小雷FansUnion

get方式,是浏览器默认方式,访问简单,比如点击一个链接,直接就跳转了。

如果用post,还需要构造表单,程序实现麻烦,用户体验还会收到“不能重复提交表单”等提示,麻烦很多。

get方式,用户直接看到url和参数,复制粘贴,可以方便收藏、转发,而post不行。

网友看法 - 方腾飞

这个原因很多。在很多场景下,用GET实现起来更简单,也足够了,比如并发网给其他网站引流需要加些参数,这样方便其他网站统计流量来源,如果用POST,并发网就的做一个Post提交,会比较麻烦。

割眼看世界

浏览器地址栏打开的默认就是GET,所以链接用GET很方便。

POST的提交需要表单或js提交,麻烦。

GET可以使用缓存。

GET有利于SEO。

华仔的逆袭

Get方式的简洁和缓存比较能说服我。

以上这篇解决Springboot get请求是参数过长的情况就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持考高分网。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/131695.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号