如何从422 Unprocessable Entity响应中获取错误消息

时间:2018-02-19 11:04:56

标签: android error-handling retrofit response http-status-code-422

我做了一个api调用,返回给我

  

响应{protocol = http / 1.1,code = 422,message = Unprocessable Entity,url = https://someapi/endpoint}

在日志中,随着响应,我得到以下内容:

  

{“message”:“验证失败”,“错误”:{“电子邮件”:[“已经被拍摄”]}}

我正在开发一款具有个人资料创建功能的Android应用,我希望将用户重定向,以便在我收到此响应时可以更改其电子邮件地址,但为此我需要获取并处理“错误”消息。

如何从错误正文中获取消息?我试过这样的事:

  

response.message()

但我只得到

  

无法处理的实体

1 个答案:

答案 0 :(得分:2)

尝试以下

class Some<T>{
    constructor(
        private type: string,
        public data: T
    ) {
    }

    foo() {
        console.log(`my type is ${this.type} and my data is ${this.data}`)
    }
}

const bar = new Some('hello', 123);
bar.data; // Hover over me to see type in your IDE
bar.foo();

我希望它会帮助你: - )