当前位置: 首页 > 知识库问答 >
问题:

在Retrofit 422代码响应中,我没有得到完整的错误正文响应

龙玄天
2023-03-14

我没有从改造422代码中获得完整的响应字符串作为JSON

这是我在错误体中得到的

[size=67 text=[{"field":"current_password","message":"Invalid current password…]

谢谢

更新

val listType = object : TypeToken<List<UpdatePasswordError>>() {}.type
                                val errorConverter: Converter<ResponseBody, List<UpdatePasswordError>> = networkClientI.mRetrofit.responseBodyConverter<List<UpdatePasswordError>>(listType, arrayOfNulls<Annotation>(0))
                                val errorList = errorConverter.convert(it.errorBody()!!)

我已经成功地将我对错误体的响应转换为Json

UpdatePasswordError.kt

data class UpdatePasswordError(
    @SerializedName("field")
    val `field`: String? = null,
    @SerializedName("message")
    val message: String? = null

)

共有1个答案

秦博达
2023-03-14

你为什么决定不是所有有错误的字符串都会得到响应?你查过Debagger了吗?尝试按如下所述处理网络错误:https://futurestud . io/tutorials/retrieval-2-simple-error-handling

 类似资料:
  • 我使用Jmeter对一个包括web套接字连接的应用程序进行负载测试。 当尝试使用单读取采样器读取帧中的数据时,得到错误响应代码:无响应响应消息:读取超时,未收到响应。 有人能帮我解决这个问题吗? 线程名称:密苏里州TestEnv 1-1样例开始时间:2019-10-09 10:40:43 IST加载时间:1000连接时间:0延迟时间:0大小以字节为单位:0发送字节:0头大小以字节为单位:0主体大小

  • 我正在使用Volley向API发出GET请求: 预期的JSON对象响应很大(可能高达500 KB)。我无法在日志中看到完整的响应。仅显示前50行左右。我还得到了info: BasicNetwork.log慢速请求:请求的HTTP响应= 这意味着请求需要超过3000毫秒。 尝试过的事情: 我已经在手机的开发者选项中将记录器缓冲区大小增加到1M。 原因可能是什么?当它很大的时候,响应是大块发送的吗?如

  • 我的输出是吐司: 事实上,我不想吐司错误味精像这样…我想简单的信息像“电子邮件或密码是错误的。再试一次” 帮帮我谢谢

  • 我正在我的. Net Web应用程序上运行负载测试,使用Jeter。应用程序过程:启动-登录-开始测试-回答问题 直到500个用户或有时750个用户,测试才成功运行。但是当我增加负载时,我得到一个错误: 11.111.111.111是我的服务器IP地址。 我已经将jmeter.batch文件堆内存增加到HEAP=-Xms1g-Xmx4g-XX: MaxMetaspaceSize=256m Apac

  • 我正在使用JMeter执行负载测试,用户应该执行启动-登录- clk仪表板页面- clk登录页面(登录后出现的页面,即主页),其中clk仪表板和clk登录页面重复操作5次。 直到30个用户,当我增加用户负载时,我没有收到任何错误,我开始收到错误,因为 响应代码:非HTTP响应代码:org.apache.HTTP.conn.HttpHostConnectException响应消息:非HTTP回应消息

  • 我正在编写下面的代码,但这只是在响应代码为200时捕获响应体。对于所有其他情况,它都失败了。 图片-邮递员发出呼叫和响应,其中响应代码不等于200 例如,当响应代码409时,代码抛出错误 线程“main”java.io.IOException中的异常:服务器返回HTTP响应代码:409用于URL:http://fetch.product/v1/products/PD16798270/validat