【问题标题】:How To Post using Retrofit Android Kotlin [duplicate]如何使用 Retrofit Android Kotlin 发布 [重复]
【发布时间】:2021-12-12 09:39:03
【问题描述】:

我有这样的 JSON,我想使用改造 android 发布这些数据

{ “状态”: ””, “信息”: ””, “数据”: { “要求”: { “文本数据”:“123” } } }

我不知道如何发布这些数据,有人想帮我回答吗?

【问题讨论】:

标签: android json kotlin post retrofit


【解决方案1】:

您可以通过为您的请求创建 POJO 或数据类(在 kotlin 中)来实现,这样可以更轻松地执行此类操作。

MyRequest.kt

data class MyRequest(
    var status: String,
    var message: String,
    var data: MyData
)


data class MyData(
    var request: RequestData
)


data class RequestData(
    var textData: String
)

MyApiInterface.kt

interface MyApiInterface {
    @POST("/my_url_endpoint")
    fun myRequest(
        @Body request: MyRequest
    ): Call<Unit>
}

MyActivity.kt

....

val request = MyRequest(
    "Ok",
    "My Message",
    MyData(
        request = RequestData("Hello World")
    )
 )

RetrofitClient.api.myRequest(request).enqueue(object: Callback<Unit> {
  override fun onResponse(call: Call<Unit>, response: Response<Unit>) {
      // TODO: some task
  }

  override fun onFailure(call: Call<Unit>, t: Throwable) {
      // TODO: some task
  }
})

....

执行此请求后,如果您添加了日志拦截器,您可以使用以下正文检查该请求。

{"data":{"request":{"textData":"Hello World"}},"message":"My Message","status":"Ok"}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-03-29
    • 2019-11-25
    • 1970-01-01
    • 2021-10-06
    • 2015-02-27
    • 1970-01-01
    • 2018-01-31
    • 2017-06-08
    相关资源
    最近更新 更多