如何在Android中向HTTP GET请求添加参数?

发布于 2021-02-02 22:50:07

我有一个尝试发送的HTTP GET请求。我尝试通过首先创建一个BasicHttpParams对象并将参数添加到该对象,然后调用setParams( basicHttpParms )我的对象,来将参数添加到此请求中HttpGet。此方法失败。但是,如果我手动将参数添加到URL中(即append ?param1=value1&param2=value2),它将成功。

我知道我在这里缺少任何东西,任何帮助将不胜感激。

关注者
0
被浏览
345
1 个回答
  • 面试哥
    面试哥 2021-02-02
    为面试而生,有面试问题,就找面试哥。

    我使用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;
    }
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看