微信支付之jsapi

       这两天在研究微信公众号的支付,弄完以后写一个文档,方便以后自己再次做这个的时候可以看。

      首先,https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_1;

https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140842;

在你开始操作之前请先阅读微信文档,微信提供给你的资料你都不看那就是对不起自己了!

开始之前先先介绍下上面的js接口安全域名和网页授权域名这两个东西,因为我的项目涉及到好几个二级域名,所以这里踩了挺多坑的。js接口安全域名应该指的是只有在这个域名下你才可以调用jsapi,其他域名下是没用的,

function jsApiCall()

        {

            WeixinJSBridge.invoke(

                'getBrandWCPayRequest',

                <?php echo $code;?>,

                function(res){

                    //alert(res.err_msg);

                    //WeixinJSBridge.log(res.err_msg);

                    if(res.err_msg == "get_brand_wcpay_request:ok" ) {

                        window.location.href = "<?php echo return_url('weixin');?>";

                    } else {

                        alert("交易取消");

                        window.location.href = "./index.php";

                    }

                }

            );

        }

        //function callpay()

        window.onload = function ()



        {

            if (typeof WeixinJSBridge == "undefined"){

                if( document.addEventListener ){

                    document.addEventListener('WeixinJSBridgeReady', jsApiCall, false);

                }else if (document.attachEvent){

                    document.attachEvent('WeixinJSBridgeReady', jsApiCall);

                    document.attachEvent('onWeixinJSBridgeReady', jsApiCall);

                }

            }else{

                jsApiCall();

            }

        }
也就是这一段代码必须在你的js接口安全域名设置下的才行,否则会返回

那么网页授权域名是干什么的呢,是获取用户openid用的,

https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect
这个接口是在微信获取网页授权的第一步,获取code用的,当中的 redirect_uri 是你请求微信接口后希望微信返回给你的地址,请注意,这里的
redirect_uri 必须在你的网页授权域名下才行,否则会提示

还有这个redirect_uri是可以传参数的,我当时需要传参数,但是当你传两个参数的时候 ?code=123&amount=100 ,请注意,他返回给你的时候只会给你带一个参数,code=123会返回给你,后面的amount是没得,所以如果你想传多个参数的时候请自行设置!

把我自己踩的坑先说了一遍,接下来说一下基本步骤:

1:开通你的支付功能

2:通过你自己的appid获取你的商家的一些信息,这个其他地方有,你弄好后会微信会发邮件给你的邮箱,自己查看就行了;

其他的自行百度吧,提供个连接https://www.cnblogs.com/aksir/p/6780697.html;


猜你喜欢

转载自blog.csdn.net/jueyan520/article/details/80908101