提问者:小点点

改造错误正文为十六进制


我在Retrofit中使用errorBody时遇到问题。我们的服务器正在向错误响应添加消息。当响应代码为4**并且由服务器自行处理时-我将正确的errorBody(HttpException中的字段)作为字符串。所以我只是用Gson序列化它。

但是,当我尝试从ngnix本身发送的5**响应中读取errorBody时,会出现问题。

在邮差一切工作良好,我看到正确的"身体"。

我的HttpInterceptor也记录了我正确的响应体String。

为什么会发生这种情况?我必须使用HEX转换器还是我在改造中做错了什么?


共1个答案

匿名用户

它只在十六进制中,因为没有任何东西试图为您将其解码为字符。您可以通过在该缓冲区上评估readUtf8()来在调试器中做到这一点。