我有一个尝试发送的HTTP GET请求。我尝试通过首先创建一个BasicHttpParams对象并将参数添加到该对象,然后调用setParams( basicHttpParms )我的对象,来将参数添加到此请求中HttpGet。此方法失败。但是,如果我手动将参数添加到URL中(即append ?param1=value1¶m2=value2),它将成功。
BasicHttpParams
setParams( basicHttpParms )
HttpGet
?param1=value1¶m2=value2
我知道我在这里缺少任何东西,任何帮助将不胜感激。
我使用NameValuePair和URLEncodedUtils列表创建所需的url字符串。
protected String addLocationToUrl(String url){ if(!url.endsWith("?")) url += "?"; List<NameValuePair> params = new LinkedList<NameValuePair>(); if (lat != 0.0 && lon != 0.0){ params.add(new BasicNameValuePair("lat", String.valueOf(lat))); params.add(new BasicNameValuePair("lon", String.valueOf(lon))); } if (address != null && address.getPostalCode() != null) params.add(new BasicNameValuePair("postalCode", address.getPostalCode())); if (address != null && address.getCountryCode() != null) params.add(new BasicNameValuePair("country",address.getCountryCode())); params.add(new BasicNameValuePair("user", agent.uniqueId)); String paramString = URLEncodedUtils.format(params, "utf-8"); url += paramString; return url; }