如何使用 Retrofit Android Kotlin 发布 [重复]
Posted
技术标签:
【中文标题】如何使用 Retrofit Android Kotlin 发布 [重复]【英文标题】:How To Post using Retrofit Android Kotlin [duplicate] 【发布时间】:2021-12-12 09:39:03 【问题描述】:我有这样的 JSON,我想使用改造 android 发布这些数据
“状态”: ””, “信息”: ””, “数据”: “要求”: “文本数据”:“123”
我不知道如何发布这些数据,有人想帮我回答吗?
【问题讨论】:
您可以为请求创建 pojo 类,并通过在 API 接口中使用 @Body 对其进行注释将其作为正文传递 这能回答你的问题吗? Send Post Request with params using 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"
【讨论】:
以上是关于如何使用 Retrofit Android Kotlin 发布 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Android 中使用 Retrofit 发送 JSON POST 请求,并接收字符串响应
如何使用 Retrofit Android 解析对象内部的数组
如何使用 Retrofit 在 android 中调用图像上传 Web 服务 (ASP.NET) .asmx 文件
Android:使用 Retrofit 获取不同的对象列表数据