在Android中的okhttp中向GET请求添加查询参数

有没有办法在Android中使用okhttp向GET请求添加查询参数( ?param1=val1&param2=val2 )?

我正在寻找一个API,而不是在循环中手动添加参数并转义值。

尝试HttpUrl类(在okhttp包中)。


 //adds the pre-encoded query parameter to this URL's query string addEncodedQueryParameter(String encodedName, String encodedValue) //encodes the query parameter using UTF-8 and adds it to this URL's query string addQueryParameter(String name, String value) 

注意:如果已经存在具有此名称的名称/值对,则这些函数将只添加另一对


 setEncodedQueryParameter(String encodedName, String encodedValue) setQueryParameter(String name, String value) 

注意:如果已经存在具有此名称的名称/值对,则这些函数将删除它们,并且仅在添加此新对之后


例:

 HttpUrl url = new HttpUrl.Builder() .scheme("https") .host("www.google.com") .addPathSegment("search") .addQueryParameter("q", "polar bears") .build(); 

对于当前版本的okhttp, 这是不可能的 , 没有提供可以为您处理此问题的方法 。

然而,okhttp的开发人员之一杰西威尔逊 已经说过了

我们正在添加一个新的HttpUrl类,可以在下一个版本中执行此操作。