成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

解決Springboot get請求是參數過長的情況

瀏覽:45日期:2023-04-23 13:48:39

問題原因

Springboot get請求是參數過長拋出異常:Request header is too large 的問題

錯誤描述

java.lang.IllegalArgumentException: Request header is too large

解決方案

請求頭超過了tomcat的限值。本來post請求是沒有參數大小限制,但是服務器有自己的默認大小。

設置服務器大小:

1.普通tomcat

在server.xml中

<Connector connectionTimeout='20000' port='8080' protocol='HTTP/1.1' redirectPort='8443' maxPostSize='0' maxHttpHeaderSize ='102400'/>

處加上

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請求是參數過長的情況就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Spring
相關文章: