Android Kotlin-Volley在JsonArrayRequest中设置POST参数 [英] Android Kotlin - Volley set POST Parameters in JsonArrayRequest
本文介绍了Android Kotlin-Volley在JsonArrayRequest中设置POST参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
这是代码:
val requestQueue: RequestQueue = Volley.newRequestQueue(this@MainActivity)
val jsonArrayRequest = JsonArrayRequest(
Request.Method.POST,
"$domain/do_getmemes.php",
null,
Response.Listener { response ->
},
Response.ErrorListener { // Do something when error occurred
}
)
requestQueue.add(jsonArrayRequest)
我只想添加一些参数!
我看过这个JAVA示例: https://gist.github.com/mstfldmr/f6594b2337e3633673e5
I've seen this JAVA example: https://gist.github.com/mstfldmr/f6594b2337e3633673e5
但是我不知道在这个令人讨厌的例子中,什么/在哪里/如何添加参数.
but I don't know what/where/how to add the parameters from this abomination of example.
我试图在JsonArrayRequest()
之后添加此部分:
I tried to add this part right after JsonArrayRequest()
:
{
@Override
protected Map<String,String> getParams(){
Map<String,String> params = new HashMap<String, String>();
params.put("user","YOUR USERNAME");
params.put("pass","YOUR PASSWORD");
return params;
}
@Override
public Map<String, String> getHeaders() throws AuthFailureError {
Map<String,String> params = new HashMap<String, String>();
params.put("Content-Type","application/x-www-form-urlencoded");
return params;
}
}
但不会转换为Kotlin.
but it doesn't get converted to Kotlin.
我需要发送一些整数和字符串
I need to send some Ints and Strings
推荐答案
添加对象,以便您可以覆盖函数
add object so you can override functions
val jsonArrayRequest = object : JsonArrayRequest(
Request.Method.POST,
"$domain/do_getmemes.php",
null,
Response.Listener { response ->
},
Response.ErrorListener { // Do something when error occurred
}
) {
override fun getBody(): ByteArray {
val parameters = HashMap<String, String>()
parameters["key"] = "value"
return JSONObject(parameters.toString()).toString().toByteArray()
}
}
这篇关于Android Kotlin-Volley在JsonArrayRequest中设置POST参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文