公众号支付(JSAPI)

    1. var ordor_id = _get_out_trade_no ();
    2. alert(ordor_id)
    3. $.get('/wechats/pay_h5?id=o12hcuKXjejDFUwxMgToaGtjtqf4&order_id=' + ordor_id + '&body=1111&detail=222222&fee=1&cb_url=/wechats/pay_calllback/'+ ordor_id, function(data){
    4. var r = data.data;
    5. WeixinJSBridge.invoke('getBrandWCPayRequest', r, function(res){
    6. if(res.err_msg == "get_brand_wcpay_request:ok"){
    7. alert("支付成功");
    8. // 这里可以跳转到订单完成页面向用户展示
    9. alert("支付失败,请重试");
    10. });
    11. });
    12. }

    way 1:

    1. var rate_cache = require('moa-middleware-rate-cache');
    2. var r = new rate_cache(redis, 'xxxxx_key', 40);
    • redis, 传入redis对象
    • ‘xxxxx_key’, 在redis里缓存的key
    • 40(秒)缓存时间

    way 2:

    • redis, 传入redis对象
    • ‘xxxxx_key’, 在redis里缓存的key
    • 默认缓存时间是30秒
      -
    1. wxpay.createUnifiedOrder({
    2. body: '扫码支付测试',
    3. out_trade_no: '20140703'+Math.random().toString().substr(2, 10),
    4. spbill_create_ip: '192.168.2.210',
    5. notify_url: 'http://wxpay_notify_url',
    6. product_id: '1234567890'
    7. }, function(err, result){
    8. console.log(result);
    9. });

    支付结果异步通知

    手动对账单

    查询订单

    1. // 通过微信订单号查
    2. wxpay.queryOrder({ transaction_id:"xxxxxx" }, function(err, order){
    3. console.log(order);
    4. });
    5. // 通过商户订单号查
    6. wxpay.queryOrder({ out_trade_no:"xxxxxx" }, function(err, order){
    7. });