1. 请求参数Json格式:
{
"fromId": "acs48624320",
"toId": "acs48624320",
"pageSize": "300",
"pageIndex": "1"
}
2. HTTP请求:
public class httptest {
/**
* 获取配置文件的http请求的端口和id
* dygacim:
* url: 192.168.100.57:8083
*/
@Value("${dygacim.url}")
private String imIpHost;
/**
* logger日志
*/
private static final Logger logger = LoggerFactory.getLogger(CustomerFeignImServiceImpl.class);
/**
* 引入gson
*/
Gson gson =new Gson();
public Object pageQueryCustomerMessage(CustomerMessage customermessage){
try {
//取出HTTP请求前缀
String httpRequest = Constants.HTTP_REQUEST;
//配置取出IM服务器地址端口
String registerUrl = httpRequest + imIpHost;
//将参数转为json格式的字符串
String customerMessage=gson.toJson(customermessage);
//拼接远程调用路径
registerUrl = registerUrl + "/cim/offLine/pageQueryCustomerMessage.do";
//发起http请求,将获得的结果赋值给loginResult
String loginResult = HttpRequest.post(registerUrl).body(customerMessage).timeout(Constants.HTTP_TIME_OUT).execute().body();
//将获得的值转为json格式的数据
JSONObject jsb = JSON.parseObject(loginResult);
//获取HTTP请求的状态码
String respCode=jsb.getString("respCode");
//获取HTTP请求的状态
String respMessage=jsb.getString("respMessage");
//获取HTTP请求的返回数据
String datas =jsb.getString("data");
JSONObject data = JSON.parseObject(datas);
String totalCount=data.get("totalCount").toString();
String dataString=data.get("data").toString();
String pageIndex=data.get("pageIndex").toString();
String pageSize=data.get("pageSize").toString();
List<PageOffLineVO> list = JSON.parseArray(dataString, PageOffLineVO.class);
CustomerAndUserMessage customerMessage =new CustomerAndUserMessage();
customerMessage.setTotalCount(totalCount);
customerMessage.setPageIndex(pageIndex);
customerMessage.setPageSize(pageSize);
customerMessage.setData(list);
return new OutputObject(String.valueOf(HttpStatus.OK.value()),"成功",customerMessage );
}catch (Exception e){
return new OutputObject(String.valueOf(HttpStatus.OK.value()),"失败",e.getMessage() );
}
}
}
3. 返回结果
{
"respCode": "200",
"respMessage": "成功",
"data": {
"totalCount": 47,
"pageIndex": 1,
"pageSize": 300,
"data": [
{
"head": {
"msgId": "",
"type": 3,
"msgType": null,
"msgContentType": null,
"fromId": "acs48624320",
"toId": "acs48624320",
"timestamp": 0,
"statusReport": null,
"extend": null
},
"textModel": {
"content": "测试数据007!!"
},
"picModel": null,
"cardModel": null
}
]
}
}
①. 请求参数实体信息:
public class CustomerMessage {
private String fromId;
private String toId;
private String pageSize;
private String pageIndex;
public String getFromId() {
return fromId;
}
public void setFromId(String fromId) {
this.fromId = fromId;
}
public String getToId() {
return toId;
}
public void setToId(String toId) {
this.toId = toId;
}
public String getPageSize() {
return pageSize;
}
public void setPageSize(String pageSize) {
this.pageSize = pageSize;
}
public String getPageIndex() {
return pageIndex;
}
public void setPageIndex(String pageIndex) {
this.pageIndex = pageIndex;
}
}
② .返回值实体信息
返回值主实体信息
public class CustomerAndUserMessage <T>{
private String totalCount;
private String pageIndex;
private String pageSize;
private List<T> data;
public String getTotalCount() {
return totalCount;
}
public void setTotalCount(String totalCount) {
this.totalCount = totalCount;
}
public String getPageIndex() {
return pageIndex;
}
public void setPageIndex(String pageIndex) {
this.pageIndex = pageIndex;
}
public String getPageSize() {
return pageSize;
}
public void setPageSize(String pageSize) {
this.pageSize = pageSize;
}
public List<T> getData() {
return data;
}
public void setData(List<T> data) {
this.data = data;
}
}
返回值中的list集合实体信息
PageOffLineVO 实体
public class PageOffLineVO {
private headVO head;
private OnlyTextVO textModel;
private OnlyPicVO picModel;
private OnlyCardVO cardModel;
public OnlyTextVO getTextModel() {
return textModel;
}
public void setTextModel(OnlyTextVO textModel) {
this.textModel = textModel;
}
public OnlyPicVO getPicModel() {
return picModel;
}
public void setPicModel(OnlyPicVO picModel) {
this.picModel = picModel;
}
public OnlyCardVO getCardModel() {
return cardModel;
}
public void setCardModel(OnlyCardVO cardModel) {
this.cardModel = cardModel;
}
public headVO getHead() {
return head;
}
public void setHead(headVO head) {
this.head = head;
}
}
headVO实体
public class headVO {
private String msgId;
private Integer type;
private Integer msgType;
private Integer msgContentType;
private String fromId;
private String toId;
private Long timestamp;
private Integer statusReport;
private String extend;
public String getMsgId() {
return msgId;
}
public void setMsgId(String msgId) {
this.msgId = msgId;
}
public Integer getMsgType() {
return msgType;
}
public void setMsgType(Integer msgType) {
this.msgType = msgType;
}
public Integer getMsgContentType() {
return msgContentType;
}
public void setMsgContentType(Integer msgContentType) {
this.msgContentType = msgContentType;
}
public String getFromId() {
return fromId;
}
public void setFromId(String fromId) {
this.fromId = fromId;
}
public String getToId() {
return toId;
}
public void setToId(String toId) {
this.toId = toId;
}
public Long getTimestamp() {
return timestamp;
}
public void setTimestamp(Long timestamp) {
this.timestamp = timestamp;
}
public Integer getStatusReport() {
return statusReport;
}
public void setStatusReport(Integer statusReport) {
this.statusReport = statusReport;
}
public String getExtend() {
return extend;
}
public void setExtend(String extend) {
this.extend = extend;
}
public Integer getType() {
return type;
}
public void setType(Integer type) {
this.type = type;
}
}
OnlyTextVO实体
public class OnlyTextVO {
private String content;
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
}
OnlyPicVO实体
public class OnlyPicVO {
private String thumbnailUrl;
private String imageUrl;
public String getThumbnailUrl() {
return thumbnailUrl;
}
public void setThumbnailUrl(String thumbnailUrl) {
this.thumbnailUrl = thumbnailUrl;
}
public String getImageUrl() {
return imageUrl;
}
public void setImageUrl(String imageUrl) {
this.imageUrl = imageUrl;
}
}
OnlyCardVO实体
public class OnlyCardVO {
private String link;
private String title;
private String imagUrl;
private String extendStr;
private String content;
private String type;
public String getLink() {
return link;
}
public void setLink(String link) {
this.link = link;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getImagUrl() {
return imagUrl;
}
public void setImagUrl(String imagUrl) {
this.imagUrl = imagUrl;
}
public String getExtendStr() {
return extendStr;
}
public void setExtendStr(String extendStr) {
this.extendStr = extendStr;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
}