我正在使用Volley与API进行交互。我需要将发布请求(带有参数)发送到返回JSON数组的服务。
JsonObjectRequest有一个构造函数,该构造函数采用一个方法和一组参数
JsonObjectRequest(int method, java.lang.String url, JSONObject jsonRequest, Response.Listener<JSONObject> listener, Response.ErrorListener errorListener)
但是JSONArrayRequest(我需要的那个)只有一种形式的构造函数
JsonArrayRequest(java.lang.String url, Response.Listener<JSONArray> listener, Response.ErrorListener errorListener)
如何使它发送带有数据的POST请求?
最佳答案
他们可能会在以后添加它,但是与此同时,您可以自己添加所需的构造函数:
public JsonArrayRequest(int method, String url, JSONObject jsonRequest,
Listener<JSONArray> listener, ErrorListener errorListener) {
super(method, url, (jsonRequest == null) ? null : jsonRequest.toString(),
listener, errorListener);
}
这没有经过测试,但是我没有理由不这样做,因为实现细节在父类(super class)
JsonRequest
中。试试看,看看是否可行。
编辑:
我打电话了!在我回答这个问题之后,他们花了将近两年的时间,但 Volley 团队在2015年3月19日将这个构造函数添加到了 repo 协议(protocol)中。你猜怎么着?这是EXACT语法。