java - 如何使用 Retrofit 添加 JSON 请求?
问题描述
我正在尝试通过 Retrofit 添加 JSON 请求,因为服务器需要 JSON 请求才能提取数据。
这是我要添加的请求:
{"VALID_FROM":"2018-01-01","VALID_TO":"2019-03-15"}
如果 Postman 中没有有效负载,我将收到此消息
INCORRECT_PAYLOAD_DATA:::::: 处理消息有效负载时出错 缺少元素“VALID_FROM”
这是我的 API 接口 SapRestApi.Java
public interface SapRestApi {
@Headers("Accept: application/json")
@GET("/get_users")
Call<UserList> getUserList();
}
这是我的用户类,其中找到了 getter 和 setter User.Java
public class User implements POJO {
@SerializedName("USERNAME")
private String USERNAME;
@SerializedName("VALID_FROM")
private String VALID_FROM;
@SerializedName("VALID_TO")
private String VALID_TO;
public String getUserName() {
return USERNAME;
}
public String getValidFrom() {
return VALID_FROM;
}
public String getValidTo() {
return VALID_TO;
}
public void setUserName(String USERNAME) {
this.USERNAME = USERNAME;
}
public void setValidFrom(String VALID_FROM) {
this.VALID_FROM = VALID_FROM;
}
public void setValidTo(String VALID_TO) {
this.VALID_TO = VALID_TO;
}
}
private String USERNAME;
这是我调用 getUserList() 的地方
public UserList getUserList() {
UserList userAccounts = null;
OkHttpClient.Builder httpClient = new OkHttpClient.Builder();
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(server)
.addConverterFactory(GsonConverterFactory.create())
.client(httpClient
.addInterceptor(new BasicAuthInterceptor(userName, password))
.build())
.build();
SapRestApi userAPI = retrofit.create(SapRestApi.class);
Call<UserList> callSync = userAPI.getUserList();
try {
Response<UserList> response = callSync.execute();
System.out.println("Creating Response after Call Sync Execute Method ");
System.out.println(response.toString());
userAccounts = response.body();
} catch (IOException e) {
e.printStackTrace();
}
return userAccounts;
}
每次没有有效负载时,我都会收到错误 500。谢谢!
解决方案
推荐阅读
- java - 如何使 Android 应用程序在安装时有一个包含图像的文件夹?
- android - 将协程与片段一起使用的最佳实践是什么?
- entity-framework - 尝试迁移 datatimeoffset 时,带有 EF 的 SQL Server CE 导致错误
- jenkins - Jenkins对一行中多个对象声明的解读
- java - 如何列出 Android Q(API 级别 29)中的所有内部存储文件夹?
- node.js - 如何创建解决“TypeError:connection.Db.collection is not a function”错误
- java - Vaadin:无法在生产模式上构建
- javascript - React 从类组件中删除 url 协议
- react-native - 安装导航模块时出现 React-Native-error
- java - 在 sum 程序中包含加号或减号