【发布时间】:2019-01-19 20:58:41
【问题描述】:
我有一个响应类
public class ResponseModel<T> {
private boolean isRequestSuccessful;
public boolean getIsRequestSuccessful() {
return this.isRequestSuccessful;
}
public void setIsRequestSuccessful(boolean isRequestSuccessful) {
this.isRequestSuccessful = isRequestSuccessful;
}
private String message;
public String getMessage() {
return this.message;
}
public void setMessage(String message) {
this.message = message;
}
private T object;
public T getObject() {
return this.object;
}
public void setObject(T object) {
this.object = object;
}
}
我的 API 将返回类型 T。我想解析来自 API 的响应并创建一个 ResponseModel 类型的对象。
我正在尝试实现类似下面的内容,我可以使用 c# 轻松完成。请帮助了解如何使用 Java 执行此操作
public static ResponseModel<T> Get(String requestUri) throws ClientProtocolException,IOException {
CloseableHttpClient client = HttpClientBuilder.create().build();
HttpGet httpGet = new HttpGet(requestUri);
httpGet.addHeader("TenantKey", TenantKey);
httpGet.addHeader("accept", "application/json");
HttpResponse response = client.execute(httpGet);
ResponseModel<T> responseModel = new ResponseModel<T>();
if (response.getStatusLine().getStatusCode() == 200) {
Gson gson = new GsonBuilder().create();
// parse the response as T and and assign to object of ResponseModel
responseModel.object = ...
}
else
{
responseModel.message = response.getEntity().getContent();
}
// return ResponseModel here
}
【问题讨论】:
-
请考虑提供一些反馈,也许在某个时候点赞/接受。
-
@GhostCat 抱歉耽搁了,我用我的结果更新了问题
-
当你有足够的内容来做一个好的自我回答时,只需写一个,然后接受它。将解决方案放入问题本身并不是解决问题的好方法。
-
@GhostCat 完成。谢谢!
标签: java json api apache-httpclient-4.x