controller 代码
/**
* 券商资管的撤销
* @param orderNo
* @param accountNo
* @return
* @author liu ao (17020412)
* @created 2017年8月17日 下午2:44:41
*/
@RequestMapping(value="/cancelBuyForAggeration", produces = {"application/json;charset=UTF-8"})
@ResponseBody
public ResponseEntity<String> cancelBuyForAggeration(@RequestParam(value = "orderNo") String orderNo ,
@RequestParam(value = "accountNo") String accountNo ,
@RequestParam(value = "callback") String callback,HttpServletRequest request) {
Map<String,Object> requestParam = new HashMap<String, Object>();
LOGGER.info("**********接入资产聚合跨域请求撤单方法,对应的参数为[{}], orderNo: [{}], accountNo: [{}]", new String[]{
orderNo, accountNo });
requestParam.put("orderNo", orderNo);
requestParam.put("accountNo", accountNo);
Map<String, Object> res = rsfSecuritiesTrader.cancelBuy(requestParam);
if(res.get("code").equals(ResultCode.CODE0.code)){
res.put("success", "true");
}else{
res.put("success", "false");
res.put("msg", res.get("errorMsg"));
}
HttpHeaders responseHeaders = new HttpHeaders();
responseHeaders.set("Content-Type", "text/plain;charset=utf-8");
return new ResponseEntity<String>(callback + "(" + JSONUtil.object2json(res) + ")", responseHeaders, HttpStatus.OK);
}
jsonp 的理解参考:
http://www.cnblogs.com/dowinning/archive/2012/04/19/json-jsonp-jquery.html
jsonp 中的请求默认的callback 名称就是callback ,所以这里用callback当作函数名,包裹所需传递的json 字符串,然后在中就可以在success 回调方法中使用该json 数据