當文本輸入到包含任何'+'符號的JSP文本字段中時,它將被替換爲空格,當參數值在servlet通過request.getParameter(「abc」)。'+'符號被Servlet的請求參數中的空格替換
我讀了幾個博客,並且知道編碼需要完成才能成功讀取確切的文本,但它並不清楚。有人能幫我解決這個問題嗎?
當文本輸入到包含任何'+'符號的JSP文本字段中時,它將被替換爲空格,當參數值在servlet通過request.getParameter(「abc」)。'+'符號被Servlet的請求參數中的空格替換
我讀了幾個博客,並且知道編碼需要完成才能成功讀取確切的文本,但它並不清楚。有人能幫我解決這個問題嗎?
+
在參數值內是不合法的,因爲它是參數名稱 - 值對之間定義的分隔符。發送前需要參數名稱和參數值都爲URLEncode
。
而且你還需要_decode_在服務器端的這些參數,以找回你的原文。 –
@TimBiegeleisen不,它是一個JSP,它會自動發生,就像它在任何servlet容器中一樣。 – EJP
無法重現。
即使
<form action="rep" method="GET">
<input name="foo" type="text"/>
</form>
在servlet在rep
(即使是是一個jsp)接收foo=a%2Bb
作爲查詢字符串當我在輸入字段中鍵入a+b
。
我想你是手動生成的查詢,在這種情況下,你必須網址編碼參數。
顯示你的代碼,相關部分.. Servlet應該照顧這個。 –
「+」是「」(空格)的url編碼結果,加號應該是%2B。 –
我知道「+」是「」(空格)的url編碼結果,但如果我實際輸入「+」,該怎麼辦?如何解決這個問題。 – Arunabh