改造 2 响应体 null

时间:2021-06-06 14:58:33

标签: android kotlin retrofit2

无论我做什么,结果始终为空。请帮帮我

API 文件

 @Headers("Content-Type: application/json")
    @POST("create-account")
    fun createUser(@Body accountRequest: AccountRequest): Call<ERCTServerResponse.AccountResponse>

改造文件

object RetrofitClient{

    val defaultOkHttpClient: OkHttpClient
        get() {
            return OkHttpClient.Builder()
                .connectTimeout(DEFAULT_TIMEOUT, TimeUnit.MILLISECONDS)
                .writeTimeout(DEFAULT_TIMEOUT, TimeUnit.MILLISECONDS)
                .readTimeout(DEFAULT_TIMEOUT, TimeUnit.MILLISECONDS)
                .build()
        }

    val defaultRetrofit: Retrofit
        get() {
            return Retrofit.Builder()
                .baseUrl(BASE_URL)
                .client(defaultOkHttpClient)
                .addConverterFactory(GsonConverterFactory.create())
                .build()
        }


    }

用户注册

 val service = RetrofitClient.defaultRetrofit.create(ERCT::class.java)
            service.createUser(
                AccountRequest(
                    recordType = "BY",
                    accountId = 1,
                    accountCompanyId = 0,
                    accountType = "accountType",
                    accountUserName = inputUserid.Text,
                    accountMail = inputEmail.Text,
                    accountName = inputName.Text,
                    accountSurname = inputName.Text,
                    accountTitle = inputUserWork.Text,
                    accountIdtaxNumber = inputUserid.Text,
                    accountPhone = inputMobile.Text,
                    accountPassword = inputPassword.Text,
                    accountDealerId = 1,
                    accountLogin = "",
                    recStatus = "3",
                    deleteExp = "",
                    companyCity = inputSehirBolge.Text,
                    companyRegion = inputSehirBolge.Text,
                    companyTitle = inputKurumAdi.Text,
                    companyTaxOffice = "",
                    companyFax = ""
                )
            )
                .enqueue(object : Callback<ERCTServerResponse.AccountResponse> {
                  override fun onFailure(call: Call<ERCTServerResponse.AccountResponse>, t: Throwable) {
                        Toast.makeText(applicationContext, t.message, Toast.LENGTH_LONG).show()
                    }

                    override fun onResponse(call: Call<ERCTServerResponse.AccountResponse>,
                                            response: Response<ERCTServerResponse.AccountResponse>) {
                        if (response.isSuccessful()&& response.body() != null) { // checks if res code is in [200..300)
                            val a = response.body()?.message
                            Toast.makeText(applicationContext, "$a" , Toast.LENGTH_LONG).show()
                        } else {
                            val a = response.errorBody().toString()
                            Toast.makeText(applicationContext, "$a" , Toast.LENGTH_LONG).show()
                        }

                    }

                })

        }

    }

0 个答案:

没有答案