微信H5支付demo

微信H5支付demo
摘要由CSDN通过智能技术生成

近来对支付来点兴趣,搞了一个微信H5的支付demo供大家参考一下。

@RequestMapping(value ="/H5",method = {RequestMethod.POST,RequestMethod.GET})

public String H5(){
return "text_jsp/h5";//微信订单的页面
}


/**
 * 微信H5 支付
 * 注意:必须再web页面中发起支付且域名已添加到开发配置中
 * @throws DocumentException 
 * @throws IOException 
 */


@RequestMapping(value ="/H5Pay",method = {RequestMethod.POST,RequestMethod.GET})
public void H5Pay(HttpServletRequest request,HttpServletResponse response,String ip) throws IOException, DocumentException{
String value =  String.valueOf(System.currentTimeMillis());//随机生成的微信订单号
SortedMap<String, String> packageParams = new TreeMap<String, String>();
String nonce_str = UUID.randomUUID().toString().replaceAll("-", "");//生成随机32位字符串
String spbill_create_ip = request.getRemoteAddr();//获取客户端的IP,在没有转发的情况下可以用这个获取IP,转发了就不可以了!
        String khdIP = getIpAddr(request);//转发获取客户端IP的方法
packageParams.put("appid", appID);// 公众账号ID
packageParams.put("body", "美人");//商品描述
packageParams.put("mch_id", mchID);//商户号
packageParams.put("nonce_str", nonce_str);//随机字符串
packageParams.put("out_trade_no", value);//订单号
packageParams.put("total_fee", "1");//金额
packageParams.put("spbill_create_ip",khdIP);//客户端IP
packageParams.put("notify_url", h5_notify_url);//回调函数
packageParams.put("trade_type", "MWEB");  //支付类型,H5是MWEB类型
packageParams.put("scene_info", "{\"h5_info\": {\"type\":\"Wap\",\"wap_url\": \"http://g.lotut.com\",\"wap_name\": \"美人\"}}");//场景信息
RequestHandler reqHandler = new RequestHandler(request, response);
reqHandler.init(appID, secret, partnerKey);
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值