gpt4 book ai didi

java - Retrofit 2 根据要求将 Object 转换为 Json

转载 作者:行者123 更新时间:2023-11-30 08:41:15 26 4
gpt4 key购买 nike

我有课:

@XmlRootElement(name = "myobject")
@XmlAccessorType(XmlAccessType.FIELD)
public class MyObject {

@XmlElement
private Long id;
@XmlElement
private String name;
...
}

我使用 Retrofit 2 向服务器发送数据。要求

进入接口(interface)的方法:

@POST("/update")
Call<Response> updateObject(@Body MyObject myObject);

当我使用它时:

retrofit = new Retrofit.Builder()
.baseUrl(API_URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
ServerAPI api = getRetrofit().create(ServerAPI.class);
Call<Response> call = api.updateObject(myObject);
...
retrofit2.Response response = call.execute();
...

发送到服务器

{"id":3,"name"}

但我需要

{myobject:{"id":3,"name"}}

即将主体包裹在 {myobject} 中。如何修复?

最佳答案

最简单的做法是将您的响应包裹在您尝试发送的对象周围。

public class ObjectWrapper {
@SerializedName("myobject")
public final MyObject myObject;

public ObjectWrapper(MyObject myObject) {
this.myObject = myObject;
}
}

关于java - Retrofit 2 根据要求将 Object 转换为 Json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35188638/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com