Ребята, у меня есть API, который принимает входные данные в виде
[{"username":"usr","password":"123456","userflag":"1"}]
и я написал Retrofit Service как
@FormUrlEncoded
@POST("login")
fun login( @Field("login") List<LoginModel>): Call<Any>
, а LoginModel -
data class LoginModel(
@SerializedName("username") var username:String,
@SerializedName("password") var password:String,
@SerializedName("userflag") var userflag:String
)
Когда я вызываю API, передавая параметры в виде списка
сервер выдает ошибку 500, так как не получит параметры.
Но то же самое работает, когда я использую JsonArray вместо List <> в качестве
json.addProperty("username", loginModel.username)
json.addProperty("userflag", loginModel.userflag)
json.addProperty("password", loginModel.password)
var jarray = JsonArray()
jarray.add(json)
var call: Call<Any> = GetDataService.create().login(jarray.toString())
вместе с
@FormUrlEncoded
@POST("login")
fun login( @Field("login") data:String): Call<Any>
Почему то же самое отказывается работать со списком в качестве параметра .. ??