使用名称值对的 Android volley post 请求
Posted
技术标签:
【中文标题】使用名称值对的 Android volley post 请求【英文标题】:Android volley post request using name value pairs 【发布时间】:2015-02-22 19:16:09 【问题描述】:我正在使用volley 库向服务器发出发布请求。这个库使用Map<String, String>
作为发布参数。我的问题是想为同一个键有多个值,可以使用NameValuePairs
,但不能与 volley 一起使用。提前致谢!
【问题讨论】:
【参考方案1】:尝试覆盖下面的方法,它来自源代码:
/**
* Returns the raw POST or PUT body to be sent.
*
* @throws AuthFailureError in the event of auth failure
*/
public byte[] getBody() throws AuthFailureError
Map<String, String> params = getParams();
if (params != null && params.size() > 0)
return encodeParameters(params, getParamsEncoding());
return null;
返回要发送的原始 POST 或 PUT 正文。
所以用你的参数覆盖getBody()
。
【讨论】:
那么,拥有重复键的条目对我有什么帮助?你能详细说明一下吗? overridegetBody()
构造你的NameValuePairs
然后将其转换为byte array
,或者构造类似"key=value1&key=value2"
然后将其转换为字节数组。以上是关于使用名称值对的 Android volley post 请求的主要内容,如果未能解决你的问题,请参考以下文章
Alamofire 是不是支持结构化为有序值列表的 JSON?参数为 [String: Any],仅符合名称/值对的集合