9

URIBuilder を使用して URL を作成しようとしていますが、何らかの理由で %20 ではなく + が表示されます。

これは私のコードです:

            URI uri=null;
            try {
                uri = ub.setScheme("http")
                        .setHost("myalcoholist.com")
                        .setPath("/drink-management/view-drink-json")
                        .setParameter("flavor",(String)params[1])
                        .setParameter("brand",(String)params[2])
                        .setParameter("company",(String)params[3])
                        .build();
            } catch (URISyntaxException e) {
                Log.e("url", "could not parse url", e);
                return null;
            }

パラメータ:

params[3] = {java.lang.String@831933398520}"contreau france."
params[2] = {java.lang.String@831933398384}"cointreau"
params[1] = {java.lang.String@831933398256}"orange"

結果の URL:

"GET /drink-management/view-drink-json?flavor=orange&brand=cointreau&company=contreau+france. HTTP/1.1" 200 538 "-" "Apache-HttpClient/UNAVAILABLE (java 1.4)"

パラメータを適切にエンコードするには、何を変更する必要がありますか?

ありがとう

4

1 に答える 1