課程
/后端開發
/Java
/JAVA遇見HTML——JSP篇
在response.jsp中加上flush方法之后 重定向和轉發都失敗 去掉之后就成功了
2017-12-05
源自:JAVA遇見HTML——JSP篇 3-11
正在回答
可能是緩存區的內容以輸出
response頁面一旦調用一個flush()方法后,代表該response已經提交, 執行完畢,不能再使用
response是服務端對客戶端請求的一個響應,其中封裝了響應頭、狀態碼、內容等,服務端在把response提交到客戶端之前,會向緩沖區內寫入響應頭和狀態碼,然后將所有內容flush。
這就標志著該次響應已committed(提交)。對于當前頁面中已經committed(提交)的response,就不能再使用這個response向緩沖區寫任何東西
(注:同一個頁面中的response.XXX()是同一個response的不同方法,只要其中一個已經導致了committed,那么其它類似方式的調用都會導致 IllegalStateException異常)。
舉報
Java Web入門級教程JSP,帶你輕松的學習JSP基礎知識
1 回答關于請求重定向和請求轉發
2 回答請求重定向和請求轉發的區別
2 回答為什么登錄成功用請求轉發,登錄失敗用請求重定向?
2 回答為什么重定向之前要去掉flush
1 回答關于request和response的請求轉發和請求重定向在項目中什么時候什么時候用到誰?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-12-05
可能是緩存區的內容以輸出
2020-12-11
response頁面一旦調用一個flush()方法后,代表該response已經提交, 執行完畢,不能再使用
response是服務端對客戶端請求的一個響應,其中封裝了響應頭、狀態碼、內容等,服務端在把response提交到客戶端之前,會向緩沖區內寫入響應頭和狀態碼,然后將所有內容flush。
這就標志著該次響應已committed(提交)。對于當前頁面中已經committed(提交)的response,就不能再使用這個response向緩沖區寫任何東西
(注:同一個頁面中的response.XXX()是同一個response的不同方法,只要其中一個已經導致了committed,那么其它類似方式的調用都會導致 IllegalStateException異常)。