REST调用

使用JAVASCRIPT调用REST服务:
var base = "http://192.168.0.114:9090/TerminalServices/ITerminalTradeInfo_IOCImpl/"
var geturl = "CardTradeService001/GetCardInfo/businessid/A1CC23/cardno/c0002";
var posturl = "CashTradeService001/postTradeDetailInfo/businessid/A1CCF1";
var postdata ='{"amountList":[{"moneyValue":5,"number":1,"type":1}],"changeList":[],"coinReserves":[{"coinValue":1,"coinNumber":0},{"coinValue":0.5,"coinNumber":0}],"date":"2015-08-18 12:02:00","materialList":[{"materialCode":"008","materialNum":1,"materialPrice":5}],"serialNumber":"ZFXC110228001002","stock":[{"materialCode":"008","materialLeft":9,"shelvesNum":6}],"terminalID":"ZFXC110228001","totalGiveChangePrice":0,"totalMaterialPrice":5,"totalPay":5}';
function testGET(url){
	var xmlhttp;
	if (window.XMLHttpRequest){// code for IE7, Firefox, Opera, etc.
		xmlhttp=new XMLHttpRequest();
	}else if (window.ActiveXObject){// code for IE6, IE5
		xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
	}
	xmlhttp.open ("GET",base+url,false);
    xmlhttp.send ();
	
    if (xmlhttp.Status = 200) {
	alert("xmlhttp.Status:"+xmlhttp.Status);
		var res = xmlhttp.responseText;
		alert(res);
	}
	return res;
}


function testPOST(url){
	var xmlhttp;
	if (window.XMLHttpRequest){// code for IE7+, Firefox, Chrome, Opera, Safari
		xmlhttp=new XMLHttpRequest();
	}else{// code for IE6, IE5
		xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
	}
	xmlhttp.open("POST",base+url,false);
//	xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
//	xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlhttp.setRequestHeader("Content-Length", postdata.length);
//	var jstr = postdata.toJSONString;
//	alert(jstr);
	xmlhttp.send (postdata);

	if (xmlhttp.Status = 200) {
		var res = xmlhttp.responseText;
//		alert("xmlhttp.Status:"+xmlhttp.Status);
//		alert(res);
	}
	return res;

}

使用Java调用REST服务
client.path("/CashTradeService001/postTradeDetailInfo/businessid/A1CCF1") 
			.accept(MediaType.APPLICATION_XML)
			.accept(MediaType.APPLICATION_JSON)
			.accept(MediaType.TEXT_PLAIN).type(MediaType.APPLICATION_XML)
			.type(MediaType.APPLICATION_JSON).type(MediaType.TEXT_PLAIN);
			serialNo = SystemTime.getSystemTime();
			// Post調用现金交易上传
			strHttpResult = client.post(CashTradeSerialize(), String.class);

注:服务端被调用的方法是通过POST/GET中的参数,通过Spring IOC注入找到的。

服务器端:

@Override
	@POST
	@Path("/CashTradeService001/postTradeDetailInfo/businessid/{input1}")
	@Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON,
			MediaType.TEXT_PLAIN })
	@Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
	public String CashTradeService_postTradeDetailInfo(@PathParam(value = "input1") String businessId,String strJson) {
		// TODO Auto-generated method stub
		// 通过业务编码映射实体
		CashTradeService cashtradeservice = getProvider().getInstance(
				CashTradeService.class, businessId);
		return cashtradeservice.postTradeDetailInfo(strJson);
	}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值