当我试图向应用程序的后端发送Httppost请求时,遇到了一个问题。我正试图发送这样的帖子请求:
{"a":[{"data":"https://news.google.com/rss/search?q=Pallini&hl=el"}]}
相反,它被发送了这样的东西:
{"a":[{"data":"https://news.google.com/rss/search?q=Pallini&hl=el"}]}
或:
{"a":[{"data":"https://news.google.com/rss/search?q=Pallini&hl=el"}]}
因此,我有一个包含字符串的列表,每次添加我希望它显示在json数组中的字符串时,代码如下:
var arrayListForA: ArrayList<JsonElement>? = arrayListOf()
config.forEach {
arrayListForA?.add(it)
}
config是另一个列表,其中包含作为字符串的jsons对象。我的问题是,是否有任何方法可以使用类、对象等在Kotlin中以更自动化的方式创建http post请求体?!例如,我可以使用一个包含Data类对象的列表,而不是一个包含字符串的列表。
val dataList : ArrayList<Data> = arrayListOf()
其中数据类别为:
@Parcelize
data class Data(
@Expose @SerializedName("data") val data: String?
) : Parcelable
有什么解决方案/想法可以根据我的需要发送邮件请求的正文吗?
您可以在Android中使用改装和okhttp。改装可以帮助您轻松处理网络问题。此外,您还可以在api请求中发布一个自定义数据模型作为主体。界面如下所示。你可以在这里阅读更多关于改装的信息。改造
@POST(Urls.PURCHASE)
fun purchase(@Body purchaseAddonReqModel: PurchaseReqModel):Single<BaseResponse<EmptyResponse>>
在这里,您可以通过添加@Body annotation 来添加您的自定义模型