我的代码-
val accessTokenRequest: JsonObjectRequest = JsonObjectRequest(Request.Method.GET, url,
Response.Listener { response ->
},
Response.ErrorListener { error ->
Toast.makeText(activity,error.toString(), Toast.LENGTH_LONG).show()
}
)
AppController.instance!!.addToRequestQueue(accessTokenRequest)
我要放置的标题 - “搜索”& 「授权」
尝试使用以下代码添加标题
val accessTokenRequest: JsonObjectRequest = object : JsonObjectRequest(
Request.Method.GET, "", JSONObject(),
Response.Listener<JSONObject?> {
TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
}, Response.ErrorListener {
TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
}) {
@Throws(AuthFailureError::class)
override fun getHeaders(): Map<String, String> {
var params: MutableMap<String, String>? = super.getHeaders()
if (params == null) params = HashMap()
params["Authorization"] = "Your authorization"
//..add other headers
return params
}
}
注意:要从 java 生成 kotlin 代码,请尝试使用 Ctrl + Shift + Alt + K 或简单地将其复制粘贴到 kotlin 文件上。
正如@chitgoks所说,@Abilash代码发生
UnsupportedOperationException at java.util.AbstractMap.put
错误。所以我重写了他的代码来修复它。
val accessTokenRequest: JsonObjectRequest = object :
JsonObjectRequest(Request.Method.GET, "", JSONObject(), Response.Listener<JSONObject?> {
// Add something you want to run on success
}, Response.ErrorListener {
// Add something you wanna run on error
}) {
@Throws(AuthFailureError::class)
override fun getHeaders(): Map<String, String> {
val params = HashMap<String, String>()
params.putAll(super.getHeaders())
params["Accept"] = "application/json"
//add your header like above line
return params
}
}