Я использую функцию для извлечения данных из API.Этот API отправляет данные обратно, даже если существует код состояния, отличный от 200.
var mQueue = Volley.newRequestQueue (this) val url = "randomurl.com"
val accessTokenRequest: JsonArrayRequest = object : JsonArrayRequest(
Request.Method.GET, url, JSONArray(),
Response.Listener<JSONArray> {
val json = JSON(it.getString(0))
}, Response.ErrorListener {
if (it.networkResponse != null){
showAlert(this, evaluateErrorCode(it.networkResponse.statusCode).toString())
} else{
showAlert(this, R.string.ERROR_UNKNOWN.toString())
}
// here I want the function to stop (if an error was found)
}) {
@Throws(AuthFailureError::class)
override fun getHeaders(): Map<String, String> {
val params = HashMap<String, String>()
return params
}
}
mQueue.add(accessTokenRequest)
}
}
Когда ответ.ErrorListener ловит то, что я не хочу, чтобы Response.Listener был выполнен.Как мне этого добиться?