У меня есть проблема, это в моем андроиде, получая Json в почтальоне:
{
"syskey": "base64:5i/Sy3ujzpOhqTowu838H2gx2Uk4+LR4tLkK5eOZgfk=",
"createDate": "",
"updateDate": "",
"data": {
"market_mobile_banner": [
{
"id": 1,
"banner_txt": "banner1",
"banner_price": "12.99",
"banner_file": "https://webqr.saltcloudserver.com/storage/banner/PumdmssQTRKpAfyD7a6ai5NTCJJd7fFpOmCqKmPH.png"
},
{
"id": 2,
"banner_txt": "banner2",
"banner_price": "33.95",
"banner_file": "https://webqr.saltcloudserver.com/storage/banner/X9sxhmREMRbyYV1poo2UnHUJKF9Bt6eQqcBL2LVn.jpeg"
},
{
"id": 3,
"banner_txt": "Banner3",
"banner_price": "5.66",
"banner_file": "https://webqr.saltcloudserver.com/storage/banner/4dGmwqiFB0V4qGfX1ZkEVFrILZUekvE0pPsjfCID.jpeg"
}
],
"whatsnew": [
{
"id": 1,
"new_txt": "new1",
"new_file": "https://webqr.saltcloudserver.com/storage/new/Z1DB604SqG43tc3XJbJXxvqwES3H4BofMimnMVqP.jpeg"
},
{
"id": 2,
"new_txt": "new2",
"new_file": "https://webqr.saltcloudserver.com/storage/new/FW39O5VLPvF4aBXd1UQwWWP3m6NLwx7IMSnYvHXk.jpeg"
},
{
"id": 3,
"new_txt": "new3",
"new_file": "https://webqr.saltcloudserver.com/storage/new/Srh5nCQekGLH9IPbmAkqwFV6pMou7yCXbkpWGp2l.jpeg"
}
]
}
}
GetHomeResponse.kt
data class GetHomeResponse(
val syskey: String? = null,
val createDate: String? = null,
val updateDate: String? = null,
val data: HomeData? = null)
HomeData.kt
data class HomeData(
@SerializedName("market_mobile_banner")
val marketMobileBanner: List<MarketMobileBannerItem?=null,
val whatsnew: List<WhatsnewItem>?=null)
MarketMobileBannerItem.kt
data class MarketMobileBannerItem(
val id: Int? = null,
@SerializedName("banner_txt")
val bannerTxt: String? = null,
@SerializedName("banner_price")
val bannerPrice: String? = null,
@SerializedName("banner_file")
val bannerFile: String? = null)
WhatsNewItem.kt
data class WhatsnewItem(
val id: Int? = null,
@SerializedName("new_txt")
@Expose
val newTxt: String? = null,
@SerializedName("new_file")
@Expose
val newFile: String? = null)
WebQr.kt
interface WebQrApi {
@GET("home/{outLetId}")
fun getHomeData(@Path("outLetId")
outLetId:Int):Observable<GetHomeResponse>}
Когда я вызываю его из своего кода Android с модификацией, у меня возникает ошибка com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 118 path $.data.whatsnew .
Мой формат неверен или данные сервера неверны?Это показывает ошибку сбоя. Как я могу исправить?Мой друг сказал, что это неправильно в формате Json при добавлении атрибутов в коллекцию. Но он возвращается в виде строки.