1. 程式人生 > >關於Volley的問題,GET方式下輸入有空格的引數居然解析錯誤,導致不能正確發出請求

關於Volley的問題,GET方式下輸入有空格的引數居然解析錯誤,導致不能正確發出請求

關於Android 的網路請求框架Volley的問題,今天在寫專案的時候遇到這樣一個問題。我按常規方法拼接url,有一個引數(例如name=Golden Apple)其中Golden與Apple之間的空格居然無法識別,導致解析錯誤,不能正確發出請求。

後來再複製整個url到瀏覽器下一試,居然沒問題。不過空格自動轉碼為‘%20’了,不知道這是不是Volley的一個坑,還是我的程式碼問題。有遇到同樣問題的朋友嗎,這裡我就根據這個空格的轉義字元‘%20’把原來的帶空格的字串變為Golden%20Apple加到url中試了一下,顯然成功了。

public class VolleyParamUtil {
    public
static String transformToNoSpaceString(String before){ String after=""; after=before.replace(" ","%20"); return after; } }

看來Volley的開發人員顯然是大意了,沒先到居然有人輸入帶空格的引數。不過這是我在測試第三方資料提供商資料的時候發現這樣一個帶空格的引數在Volley中的bug,希望以後的資料空格只有一個。