[英]How can I use Retrofit to POST a complex JSON parameter
我需要做的 Post 请求应该是这样的
{
"project": {
"name": "newname123",
"identifier": "id55"},
"key":"8f583ad25100575b974062e0cee43e47aa158e4e"}
我能够使用 Postman 中的原始实现将它发送到服务器,但不知道如何使用 form-data 发送它
这是我的界面
@FormUrlEncoded
@POST("projects.json")
Call<Project> CreateProject(@Field(value = "project") ProjectToSend project,
@Field("key") String key);
无论我尝试用@body 还是@field 来做,它都不起作用。
ProjectToSend 类
public class ProjectToSend {
private String name;
private String identifier;
public ProjectToSend(String name, String identifier) {
this.name = name;
this.identifier = identifier;
您可以尝试使用此网站来创建复杂的POJO类: JSON schema 2 pojo
创建两个类来表示完整的JSON,如下所示:
public class Project {
private ProjectToSend project;
private String key;
// getters and setters
}
public class ProjectToSend {
private String name;
private String identifier;
// getters and setters
}
然后打电话:
@POST("put/the/url/here")
Call<Project> createUser(@Body Project project);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.