news 2026/8/26 20:00:06

Unable to create converter for xxx.NetworkResponse<Auth> for method AuthService

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Unable to create converter for xxx.NetworkResponse<Auth> for method AuthService

BUG解决要点

  • @POST + @Body必须写

  • NetworkResponse<T>必须是@Serializable data class

  • Auth必须@Serializable

  • 不要用 sealed / Any

哪怕 Auth 是@Serializable,只要NetworkResponse有下面任意一条,就一定失败:

  • ❌ 没有@Serializable
  • ❌ 是sealed class
  • ❌ 是open class
  • ❌ 有Any/Map<String, Any>
  • ❌ 泛型T没有限定
  • ❌ 有自定义构造逻辑

Retrofit 会在创建接口代理时直接抛这个异常。

gradle(非常关键,很多人漏)

js

体验AI代码助手

代码解读

复制代码

dependencies { implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.3") implementation("com.jakewharton.retrofit:retrofit2-kotlinx-serialization-converter:0.8.0") }

js

体验AI代码助手

代码解读

复制代码

plugins { id("org.jetbrains.kotlin.plugin.serialization") }

代码示例

如果是Body的JSON请求,必须添加**@Body**

kotlin

体验AI代码助手

代码解读

复制代码

interface AuthService { @POST("login/password") suspend fun loginByPassword( @Body params: Map<String, String> ): NetworkResponse<Auth> }

kotlin

体验AI代码助手

代码解读

复制代码

import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable data class NetworkResponse<T>( @SerialName("code") val code: Int, @SerialName("message") val message: String, @SerialName("data") val data: T? = null )

kotlin

体验AI代码助手

代码解读

复制代码

import kotlinx.serialization.Serializable @Serializable data class Auth( val token: String, val refreshToken: String, val expire: Long )

根因是kotlinx.serialization 无法为 NetworkResponse 生成 Serializer

原文:https://juejin.cn/post/7584758215701332006

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/25 14:17:34

5分钟快速掌握:用node-qrcode打造专业级二维码

在数字化时代&#xff0c;二维码已经成为连接线上线下的重要桥梁。node-qrcode作为一款功能强大的二维码生成库&#xff0c;能够帮助开发者在Node.js和浏览器环境中快速创建各种格式的二维码。无论是网站链接分享、产品信息展示还是个人名片制作&#xff0c;这个工具都能轻松胜…

作者头像 李华
网站建设 2026/8/26 3:18:23

杭亚 YS - 01H 声光报警器用户心得

在现代工业和日常生活场景中&#xff0c;安全警示至关重要。我所在的工厂就引入了杭亚 YS - 01H 声光报警器&#xff0c;一段时间的使用下来&#xff0c;我对它有了深刻且良好的体验。杭亚 YS - 01H 声光报警器的声音效果让我印象深刻。它的音量极大&#xff0c;能达到 120 分贝…

作者头像 李华
网站建设 2026/8/26 2:21:10

扔掉PuTTY!我用这款“瑞士军刀”实现了运维效率翻倍

上百台服务器监控、故障排查、文件传输……当运维任务如潮水般涌来&#xff0c;一个全能的指挥中心能让前线指挥官从容不迫。想象这样一个场景&#xff1a;深夜2点&#xff0c;公司线上系统突然报警&#xff0c;五台Web服务器同时出现高负载告警。你需要立即登录每台服务器&…

作者头像 李华
网站建设 2026/8/26 20:14:34

Clipper2深度解析:掌握多边形裁剪与偏移的终极利器

Clipper2深度解析&#xff1a;掌握多边形裁剪与偏移的终极利器 【免费下载链接】Clipper2 Polygon Clipping and Offsetting - C, C# and Delphi 项目地址: https://gitcode.com/gh_mirrors/cl/Clipper2 在计算机图形学和地理信息系统开发中&#xff0c;多边形裁剪与偏移…

作者头像 李华
网站建设 2026/8/26 17:05:34

Web 项目地图选型指南:从 Leaflet 到 MapTalks,如何选择合适的地图引擎?

在开发涉及地理信息的 Web 应用时&#xff08;如物流追踪、智慧城市、门店管理、轨迹回放等&#xff09;&#xff0c;选择一个合适的地图引擎是项目成功的关键一步。市面上主流的地图库各有优劣&#xff0c;本文将从功能、性能、生态、部署成本等多个维度&#xff0c;对比常见方…

作者头像 李华