当前位置: 首页 > 知识库问答 >
问题:

在带有treverfit2的json对象中发布json数组的问题

冯元魁
2023-03-14

在api中,我必须在JSONObject中发送JSONArrayJSONObject如下所示:

{
    "token" : "1",
    "task_name" : "Name",
    "task_desc" : "Description",
    "task_start_date" : "2020/10/01",
    "task_end_date" : "2020/10/02",
    "task_award" : "15",
    "child_ids" : [
          {
              "child_id" : "1"
          },
          {
              "child_id" : "2"
          }
      ]
}
retrofit2.adapter.rxjava2.httpexception http 500 internal server error
interface CreateTaskRemote {

    @FormUrlEncoded
    @POST("parent_create_task")
    fun createTask(
        @Field("token") parentToken: String,
        @Field("task_name") title: String,
        @Field("task_desc") description: String,
        @Field("task_start_date") startDate: String,
        @Field("task_end_date") endDate: String,
        @Field("task_award") award: String,
        @Field("child_ids") childIds: List<ChildId>     <-- here i'm sending array
    ): Single<BooleanResponse>
}
data class ChildId(
    @SerializedName("child_id") val id: Int
)

共有1个答案

宋育
2023-03-14

原因可能是您将child_id作为整数值发布,但应该将其作为字符串发布。(关于:“child_id”:“1”)

data class ChildId(
    @SerializedName("child_id") val id: String
)

编辑:也尝试使用此配置:

data class CreateTaskArgs (
    @SerializedName("token") val token : Int,
    @SerializedName("task_name") val taskName : String,
    @SerializedName("task_desc") val taskDesc : String,
    @SerializedName("task_start_date") val taskStartDate : String,
    @SerializedName("task_end_date") val taskEndDate : String,
    @SerializedName("task_award") val taskAward : Int,
    @SerializedName("child_ids") val childIds : List<ChildId>
)
@POST("parent_create_task")
fun createTask(
    @Body args: CreateTaskArgs
): Single<BooleanResponse>
 类似资料:
  • 问题内容: 我已经开始尝试使用Django REST框架。到目前为止,我已经成功地为我的对象创建了一个序列化程序,通过Javascript的$ .post()创建了发布视图,发布对象和返回对象。因此,现在我可以在JSON和Django模型对象之间进行适当的转换。 问题是我有一个对象数组[A1,A2,…,An]。现在,当我需要发布这样的数组时,我逐个对象地进行处理。是否有可能一次发布整个数组,并在D

  • 我正在尝试向后端发送一个JSON对象。基本上,我要做的是获得两个文本字段的输入,然后是所有选定文本框的列表。我的javascript代码如下所示: 我还不是javascript方面的专家,但从我在其他Anwer和帖子中发现的情况来看,这是我可以组合起来的,我认为它实际上可以工作。后端部分工作正常,正如我用PostMan测试的那样,非常正常。这就是JSON,我;我是邮递员寄来的,看起来像: Java

  • 问题内容: 我正在尝试将JSON发布到WCF服务。json对象包含一个数组。我想知道如何正确绑定到我的数据合同。如果有人可以在这里给我指点,我将不胜感激。目前,我的购物车对象为null 我的服务界面如下所示: 我的客户电话如下 客户电话 我的JSON看起来像这样 问题答案: Fiddler对WCF REST方法的原始请求应如下所示: JSON中的响应如下所示:

  • 问题内容: 我试图从JSON数组中获取每个JSON对象。我通过HTTP发布获得此数据。 我知道我的数据是什么样的: 我的示例代码和结构如下所示: 我不确定如何遍历JSON数组并获取JSON对象,然后仅使用JSON对象。 问题答案: 试试这个作为您的结构, 您的名称不正确,顶层名称也不正确。解码为a之后,您可以遍历切片以获取每个切片

  • 问题内容: 我有以下JSON对象: 这是来自一个请求,我有成功。 问题是,即使dataJS在控制台中正确显示,我也无法访问JSON对象中的项目。有想法吗? 问题答案: 那是因为您的基础对象也是数组。 我怀疑那会有用

  • 问题内容: 我需要用车把一个json对象数组模板化:(通过chrome控制台)[object,object,object,object]其中每个对象都由以下属性组成:名称,姓氏,ecc。 我知道不可能将对象数组放在车把中,但是我们必须创建具有数组所有对象的all属性的唯一对象。谁能建议我一个函数来创建它 问题答案: 您可以在调用模板时将数组设置为包装对象的属性。 例如,以作为持有财产 并且您的模板