解決Springboot get請(qǐng)求是參數(shù)過(guò)長(zhǎng)的情況
問(wèn)題原因
Springboot get請(qǐng)求是參數(shù)過(guò)長(zhǎng)拋出異常:Request header is too large 的問(wèn)題
錯(cuò)誤描述
java.lang.IllegalArgumentException: Request header is too large
解決方案
請(qǐng)求頭超過(guò)了tomcat的限值。本來(lái)post請(qǐng)求是沒(méi)有參數(shù)大小限制,但是服務(wù)器有自己的默認(rèn)大小。
設(shè)置服務(wù)器大?。?/strong>
1.普通tomcat
在server.xml中
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" maxPostSize="0" maxHttpHeaderSize ="102400"/>
處加上
maxHttpHeaderSize =”102400”
2.SpringBoot
SpringBoot項(xiàng)目更方便了,在application.properties文件中添加
#請(qǐng)求參數(shù)過(guò)長(zhǎng)設(shè)置
server.max-http-header-size=102400
補(bǔ)充知識(shí):JavaWeb - URL 中很長(zhǎng)的一串請(qǐng)求參數(shù),為什么不采用 POST 方式?
GET 方法
請(qǐng)注意,查詢(xún)字符串(名稱(chēng)/值對(duì))是在 GET 請(qǐng)求的 URL 中發(fā)送的:
/test/demo_form.asp?name1=value1&name2=value2
有關(guān) GET 請(qǐng)求的其他一些注釋?zhuān)?/p>
GET 請(qǐng)求可被緩存
GET 請(qǐng)求保留在瀏覽器歷史記錄中
GET 請(qǐng)求可被收藏為書(shū)簽
GET 請(qǐng)求不應(yīng)在處理敏感數(shù)據(jù)時(shí)使用
GET 請(qǐng)求有長(zhǎng)度限制
GET 請(qǐng)求只應(yīng)當(dāng)用于取回?cái)?shù)據(jù)
POST 方法
請(qǐng)注意,查詢(xún)字符串(名稱(chēng)/值對(duì))是在 POST 請(qǐng)求的 HTTP 消息主體中發(fā)送的:
POST /test/demo_form.asp HTTP/1.1
Host: w3schools.com
name1=value1&name2=value2
有關(guān) POST 請(qǐng)求的其他一些注釋?zhuān)?/p>
POST 請(qǐng)求不會(huì)被緩存
POST 請(qǐng)求不會(huì)保留在瀏覽器歷史記錄中
POST 不能被收藏為書(shū)簽
POST 請(qǐng)求對(duì)數(shù)據(jù)長(zhǎng)度沒(méi)有要求
小雷FansUnion
get方式,是瀏覽器默認(rèn)方式,訪問(wèn)簡(jiǎn)單,比如點(diǎn)擊一個(gè)鏈接,直接就跳轉(zhuǎn)了。
如果用post,還需要構(gòu)造表單,程序?qū)崿F(xiàn)麻煩,用戶(hù)體驗(yàn)還會(huì)收到“不能重復(fù)提交表單”等提示,麻煩很多。
get方式,用戶(hù)直接看到url和參數(shù),復(fù)制粘貼,可以方便收藏、轉(zhuǎn)發(fā),而post不行。
網(wǎng)友看法 - 方騰飛
這個(gè)原因很多。在很多場(chǎng)景下,用GET實(shí)現(xiàn)起來(lái)更簡(jiǎn)單,也足夠了,比如并發(fā)網(wǎng)給其他網(wǎng)站引流需要加些參數(shù),這樣方便其他網(wǎng)站統(tǒng)計(jì)流量來(lái)源,如果用POST,并發(fā)網(wǎng)就的做一個(gè)Post提交,會(huì)比較麻煩。
割眼看世界
瀏覽器地址欄打開(kāi)的默認(rèn)就是GET,所以鏈接用GET很方便。
POST的提交需要表單或js提交,麻煩。
GET可以使用緩存。
GET有利于SEO。
華仔的逆襲
Get方式的簡(jiǎn)潔和緩存比較能說(shuō)服我。
以上這篇解決Springboot get請(qǐng)求是參數(shù)過(guò)長(zhǎng)的情況就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- Springboot GET和POST請(qǐng)求參數(shù)獲取方式小結(jié)
- Springboot中攔截GET請(qǐng)求獲取請(qǐng)求參數(shù)驗(yàn)證合法性核心方法
- springboot如何接收get和post請(qǐng)求參數(shù)
- SpringBoot如何獲取Get請(qǐng)求參數(shù)詳解
- springboot中Getmapping獲取參數(shù)的實(shí)現(xiàn)方式
- SpringBoot用實(shí)體接收Get請(qǐng)求傳遞過(guò)來(lái)的多個(gè)參數(shù)的兩種方式
- SpringBoot常見(jiàn)get/post請(qǐng)求參數(shù)處理、參數(shù)注解校驗(yàn)及參數(shù)自定義注解校驗(yàn)詳解
- Springboot接收Get參數(shù)實(shí)踐過(guò)程
相關(guān)文章
Java反射學(xué)習(xí) getClass()函數(shù)應(yīng)用
所謂反射,可以理解為在運(yùn)行時(shí)期獲取對(duì)象類(lèi)型信息的操作,本文將詳細(xì)介紹,需要的朋友可以參考下2012-12-12Hadoop使用hdfs指令查看hdfs目錄的根目錄顯示被拒的原因及解決方案
這篇文章主要介紹了Hadoop使用hdfs指令查看hdfs目錄的根目錄顯示被拒的原因及解決方案,分布式部署hadoop,服務(wù)機(jī)只有namenode節(jié)點(diǎn),主機(jī)包含其他所有節(jié)點(diǎn),本文給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-10-10spring動(dòng)態(tài)注冊(cè)bean?AOP失效原理解析
這篇文章主要為大家介紹了spring動(dòng)態(tài)注冊(cè)bean使AOP失效原理解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07Spring?JPA聯(lián)表查詢(xún)之注解屬性詳解
這篇文章主要為大家介紹了Spring?JPA聯(lián)表查詢(xún)之注解屬性示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04Java volatile的適用場(chǎng)景實(shí)例詳解
在本文里我們給大家整理了一篇關(guān)于Java volatile的適用場(chǎng)景實(shí)例內(nèi)容和知識(shí)點(diǎn),需要的朋友們可以學(xué)習(xí)下。2019-08-08