【问题标题】:How To Upload Multiple Image URL String Within Array如何在数组中上传多个图像 URL 字符串
【发布时间】:2020-07-06 07:07:13
【问题描述】:
{
  "image_url": [
    {
      "image_url": "url1"
    },
    {
      "image_url": "url1"
    },
    {
      "image_url": "url1"
    }
  ]
}

我想将 image_url 作为数组传递给具有多个图像 URL [String] 的 API 我如何使用 Retrofit [Android - Kotlin] 像这样传递

val jsResult = JSONObject()
    
val jsArray = JSONArray()
    
for (i in 0 until imgOnlineList.size) {
    val jGroup = JSONObject()
    jGroup.put("imageURL", imgOnlineList[i])
    jsArray.put(jGroup)
}
jsResult.put("productCategory", jsArray)
    
Constant.logD(mTAG, "productCategoryOnlineList : ", jsResult.toString())

【问题讨论】:

  • 到目前为止你尝试了什么?提供代码
  • 另外,标签位于“标签”部分,而不是标题中。

标签: android kotlin arraylist retrofit2


【解决方案1】:

由于您将RetrofitKotlin 一起使用,因此您不需要编写普通的Json 对象。您可以在Retrofit Builder中设置Gson转换器。

您可以创建两个数据类

data class Image(val image_url: String)
data class ImageList(val image_url: List<Image>)

然后将它们作为@Body 有效负载传递给API 调用,或者API 提供者需要它们。例如,

@POST("{api_end_point}")
fun sendImages(@Body imageList: ImageList)

【讨论】:

  • 谢谢.. 我想将数据动态添加到 ImageList 数据类我如何添加和发布一个正文参数..
  • 您始终可以通过动态添加Image 对象来创建自定义imageList。例如,val imageList = mutableListOf&lt;Image&gt;() imageList.add(Image("image_url")) 然后将列表传递给sendImages 方法。
猜你喜欢
  • 2021-05-05
  • 2018-11-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-09-25
  • 2013-10-03
  • 2017-09-10
  • 1970-01-01
相关资源
最近更新 更多