这种方式返回的是字符不是类对象
Response response = target.request().header("X-Auth-Token", token).buildPost(entity).invoke();
int code = response.getStatus();
message = response.readEntity(String.class);
response.close();
/* System.out.println(code);
System.out.println(message);*/
} catch (Exception e) {
e.printStackTrace();
}
return message;
前台按照这种格式取就可以
String response = request.postRequest();
JSONObject resObj = JSONObject.parseObject(response);// .fromObject(response);
JSONObject jsonObj = resObj.getJSONObject("result");//通用
if(jsonObj==null)
return null;
JSONArray jsArray = jsonObj.getJSONArray("operationLogList");//根据返回的字符结果设置
//另一种需要对象类
Client client = getClient();
WebTarget webTarget = client.target(vimRestRootUrl).path(VDU_URL)
.path(vduUUID).path("detail");
Invocation.Builder invocationBuilder = webTarget
.request(ContentType.APPLICATION_JSON_UTF_8);
//这种class方式的也是对应json才能自动转化的,同名自动会设入,但是如果不同名要用@JsonProperty转化
VduQueryResp resp = invocationBuilder.get(VduQueryResp.class);
return resp.getResult();//返回的就是VduVm类
////
package com.certusnet.nfv.mano.nfvo.vnfr.pojo;
import com.certusnet.nfv.mano.common.pojo.VduVm;
import com.certusnet.nfv.mano.rsclient.RestResp;
public class VduQueryResp extends RestResp {
/**Vdu对应的平台虚拟机信息*/
private VduVm result;
public VduVm getResult() {
return result;
}
public void setResult(VduVm result) {
this.result = result;
}
}
package com.certusnet.nfv.mano.rsclient;
public abstract class RestResp {
protected String retCode;
protected String msg;
public String getRetCode() {
return retCode;
}
public void setRetCode(String retCode) {
this.retCode = retCode;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
}
package com.certusnet.nfv.mano.common.pojo;
import com.fasterxml.jackson.annotation.JsonProperty;
public class VduVm {
private String uuid;
@JsonProperty("vm_image")
private String vmImage;
@JsonProperty("cpu_number")
private String cpuNumber;
@JsonProperty("memory_size")
private String memorySize;
@JsonProperty("disk_size")
private String diskSize;
@JsonProperty("ip_addr")
private String ipAddr;
private String path;
private String status;
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getUuid() {
return uuid;
}
public void setUuid(String uuid) {
this.uuid = uuid;
}
public String getVmImage() {
return vmImage;
}
public void setVmImage(String vmImage) {
this.vmImage = vmImage;
}
public String getCpuNumber() {
return cpuNumber;
}
public void setCpuNumber(String cpuNumber) {
this.cpuNumber = cpuNumber;
}
public String getMemorySize() {
return memorySize;
}
public void setMemorySize(String memorySize) {
this.memorySize = memorySize;
}
public String getDiskSize() {
return diskSize;
}
public void setDiskSize(String diskSize) {
this.diskSize = diskSize;
}
public String getPath() {
return path;
}
public void setPath(String path) {
this.path = path;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getIpAddr() {
return ipAddr;
}
public void setIpAddr(String ipAddr) {
this.ipAddr = ipAddr;
}
}
rest 两种客户端数据返回的处理方式
猜你喜欢
转载自yuhuiblog6338999322098842.iteye.com/blog/2209471
今日推荐
周排行