1. 程式人生 > >在Tomcat伺服器下,java使用HttpClient發請求返回400錯誤

在Tomcat伺服器下,java使用HttpClient發請求返回400錯誤

首先要明白400錯誤是什麼意思:

由於語法格式有誤,伺服器無法理解此請求。不作修改,客戶程式就無法重複此請求。

然後在java程式碼中,列印請求的url,會發現url中存在空格,可能是使用各種序列化根據(Gson等)導致的。

這時候要把url中的所有空格替換點,url.replaceAll(" ","")。 這時候在請求就好了。 為什麼瀏覽器上訪問可以呢?因為瀏覽器(我用的是谷歌)他自動幫你把空格轉化成了'%20'了, 這時候在tomcat讀url的時候就不會讀到空格,因為tomcat在解析url的時候,會把空格前的字串當做key,後面的字串當做value。 所以解析失敗,返回400錯誤。