问题描述
我将使用以下参考资料对kotlin解决方案进行改造
implementation 'com.squareup.retrofit2:retrofit:2.4.0'
implementation 'com.squareup.retrofit2:converter-gson:2.3.0'
implementation 'com.squareup.okhttp3:logging-interceptor:4.0.1'
implementation 'com.squareup.okhttp3:okhttp:4.0.1'
我实现了一个api,它返回以下结果:
邮递员测试还可以。
if (response.code() == 500) {
val gson = GsonBuilder()
.setLenient()
.create()
var locerr = gson.fromJson(response?.errorBody()?.string(),err::class.java)
Log.e("MainActivity","${locerr.code} => ${locerr.message}")
但是我看不到“结果”,该值不在错误的正文或正文中,因为它不是成功的案例(200)
解决方法
尝试->
if (res.body()?.status==200) {
.
.
}
else
{
try {
val jObjError =
JSONObject(response.errorBody()!!.string())
Toast.makeText(
applicationContext,jObjError.getString("yout_message_key"),Toast.LENGTH_LONG
).show()
} catch (e: Exception) {
Toast.makeText(applicationContext,e.message,Toast.LENGTH_LONG).show()
Log.e("errorrr",e.message)
}
}