微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

改造响应 500 空消息

如何解决改造响应 500 空消息

您好,这是我的代码,为什么我无法收到“该值已存在”之类的消息? 为什么改造返回空消息以响应状态 500?

    call.enqueue(object : Callback<Person> {
            override fun onResponse(call: Call<Person>,response: Response<Person>) {
                if (!response.isSuccessful) {
                    Log.e(ContentValues.TAG,"Code: " + response.message())
                    Toast.makeText(context,response.toString(),Toast.LENGTH_LONG).show()
                } else {
                    pr = response.body()!!
                    init(view)
                }
            }

            override fun onFailure(call: Call<Person>,t: Throwable) {
                Log.e(ContentValues.TAG,"fauilure " + t.message)
                Toast.makeText(context,t.message,Toast.LENGTH_LONG).show()
            }
        }

这是我对调试器(改造)的回应

响应{protocol=http/1.1,code=500,message=,url=http://192.168.1.239:8080/person/}

这是我的服务器响应(来自邮递员)

{"timestamp":"2021-02-21T12:50:35.222+00:00","status":500,"error":"内部服务器错误","message":"该值已存在","path":"/person/"}

解决方法

您应该使用 response.errorBody() 方法而不是 response.body() 来获取错误消息。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。