微信支付服务端的一些坑及最终解决

有1年多没搞微信支付了,最近跳槽,要重做APP,又来接触微信这个坑比。OK,不多说,上代码。以下是我的一个controller类,重点在下面

 // 微信交易类型  
    private static final String TRADETYPE = "APP"; 
    // 微信统一下单接口路径  
    private static final String UNIFORMORDER = "https://api.mch.weixin.qq.com/pay/unifiedorder"; 
    // 微信回调地址  
    private static final String NOTIFYURL = "*****";  
    // 微信商户号:*****  
    private static final String MCHID = "******"; 
    //微信APIKEY  
    private static final String APIKEY ="*******";  
    //微信APPID  
    private static final String APPID ="*******";
    
/**
* @Description: Ajax生成微信预支付ID
* @param entity
* @return JsonResult
* @throws JSONException 
* @throws UnsupportedEncodingException 
*/
@RequestMapping(value = "/getPrepayId",method = RequestMethod.POST)
@ResponseBody
public String getPrepayId(HttpServletRequest request) throws UnsupportedEncodingException {  
        ResultObject result = new ResultObject(false);// 返回数据结果集合  
        request.setCharacterEncoding("UTF-8");    
        try {  
            // 订单编号  
            String out_trade_no = request.getParameter("out_trade_no") == null ? null : request.getParameter("out_trade_no").trim();// 订单编号  
            // 消费金额  
            String money = request.getParameter("money") == null ? null : request.getParameter("money").trim();// 消费金额  
            // 消费主题  
            String subject = request.getParameter("subject") == null ? null : request.getParameter("subject").trim();// 消费主体  
            
            if(StringUtils.isEmpty(out_trade_no)){  
                result.setMsg("参数:out_trade_no 为空");  
                result.setResultCode("-1");  
                return JSON.toJSONString(result);  
            }  
            if(StringUtils.isEmpty(money)){  
                result.setMsg("参数:money 为空");  
                result.setResultCode("-1");  
                return JSON.toJSONString(result);  
            }  
            if(StringUtils.isEmpty(subject)){  
                result.setMsg("参数:subject 为空");  
                result.setResultCode("-1");  
                return JSON.toJSONString(result);  
            } 
            String total_fee = "";
           

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值