js 跨域请求controller时,controller的写法,使用的是ResponseEntity

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 数据



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值