Fast-Android-Networking icon indicating copy to clipboard operation
Fast-Android-Networking copied to clipboard

Whenever passing nested data class getting 422 Unprocessable Entity error.

Open SoniKarsh opened this issue 5 years ago • 0 comments

I have a scenario where i am needed to call post api with the request like { "deviceDetails": { "deviceId": "123456789", "model": "Note7", "name": "Xiaomi" }, "mobileNumber": "+911234567890", "password": "password" }

and for that, I have created a data class like

@Parcelize
data class LogInReqModel(

    @SerializedName("mobileNumber")
    var mobileNumber: String = "",

    @SerializedName("password")
    var password: String = "",

    @SerializedName("deviceDetails")
    var deviceDetails: DeviceDetailsModel? = null

) : Parcelable {
    @Parcelize
    data class DeviceDetailsModel(

        @SerializedName("deviceId")
        var androidId: String = "",

        @SerializedName("model")
        var model: String = "",

        @SerializedName("name")
        var name: String = ""

    ) : Parcelable
}

And with this whenever I'm passing data using addBodyParameter

`AndroidNetworking.post(Constants.POST_BASE_URL + Constants.POST_LOG_IN_URL) .setPriority(Priority.IMMEDIATE) .addBodyParameter(LogInReqModel( mobileNumber = number.value!!, password = password.value!!, deviceDetails = deviceDetailsModel )) .build() .getAsJSONObject(object : JSONObjectRequestListener { override fun onResponse(response: JSONObject) {

                }

                override fun onError(error: ANError) {

                }

            })`

Whenever i call api i get response like 422 errocode as mentioned in question title.

SoniKarsh avatar Jul 29 '20 06:07 SoniKarsh