rxhttp icon indicating copy to clipboard operation
rxhttp copied to clipboard

converter支持kotlinx.serialization吗

Open NeVaDaAAA opened this issue 3 years ago • 4 comments
trafficstars

https://github.com/Kotlin/kotlinx.serialization

NeVaDaAAA avatar Jul 29 '22 01:07 NeVaDaAAA

支持,但暂时没有封装,需要你自己实现converter接口

liujingxing avatar Jul 29 '22 02:07 liujingxing

希望作者封装一下 十分感谢 最近在看kotlinx.serialization 有个问题想请教 这是我原来用moshi来解析的时候 image 如果用kotlinx.serialization 这里放Any的话应该会报错,该如何解决呢

NeVaDaAAA avatar Jul 29 '22 02:07 NeVaDaAAA

顺便附上一个kotlinx.serialization的一些属性说明:

Json {
    prettyPrint = true //json格式化
    isLenient = true //宽松解析,json格式异常也可解析,如:{name:"小红",age:"18"} + Person(val name:String,val age:Int) ->Person("小红",18)
    ignoreUnknownKeys = true //忽略未知键,如{"name":"小红","age":"18"} ->Person(val name:String)
    coerceInputValues =  true //强制输入值,如果json属性与对象格式不符,则使用对象默认值,如:{"name":"小红","age":null} + Person(val name:String = "小绿",val age:Int = 18) ->Person("小红",18)
    encodeDefaults =  true //编码默认值,默认情况下,默认值的属性不会参与序列化,通过设置encodeDefaults = true,可让默认属性参与序列化(可参考上述例子)
    explicitNulls =  true //序列化时是否忽略null
    allowStructuredMapKeys =  true //允许结构化映射(map的key可以使用对象)
    allowSpecialFloatingPointValues =  true //特殊浮点值:允许Double为NaN或无穷大
}

NeVaDaAAA avatar Jul 29 '22 02:07 NeVaDaAAA

希望作者封装一下 十分感谢 最近在看kotlinx.serialization 有个问题想请教 这是我原来用moshi来解析的时候 image 如果用kotlinx.serialization 这里放Any的话应该会报错,该如何解决呢

toResponse<Unit>()

liujingxing avatar Jul 29 '22 04:07 liujingxing

RxHttp v2.9.1版本已新增SerializationConverter,通过Json.asConverter()方法,即可获取该对象,Converter用法点击这里

liujingxing avatar Aug 07 '22 10:08 liujingxing

感谢 感谢

NeVaDaAAA avatar Aug 07 '22 13:08 NeVaDaAAA