解决一个微信服务号如何用于多个域名下的微信支付问题

使用方法

  1. 部署get_weixin_code.html(页面在附件里)至你的微信授权回调域名的目录下;

  2. 使用方式类似于直接通过微信回调的方式,只是将回调地址改成了get_weixin_code.html所在的地址,另外省去了response_type参数(因为它只能为code)以及#wechat_redirect(它是固定的),它们会在get_weixin_code.html里面自己加上;

  3. get_weixin_code.html页面从微信那里拿到code之后会重新跳转回redirect_uri里面填写的url,并且在url后面带上codestate。

详细示例

  1. 前往微信公众平台->接口权限->网页授权获取用户基本信息->修改,填写授权回调页面域名,例如www.abc.com;

  2. www.abc.com域名下部署get_weixin_code.html,不一定是根目录,例如:http://www.abc.com/xxx/get_weixin_code.html;

  3. 假设你的http://www.xyz.com/pay.html这个页面需要获取微信授权,那么你应该使用以下地址来获取授权:http://www.abc.com/xxx/get_weixin_code.html?appid=XXXX&scope=snsapi_base&state=gwbnsh&redirect_uri=http://www.xyz.com/pay.html;

  4. 这样最终就会跳转到这样一个地址:http://www.xyz.com/pay.html?code=XXXXXXXXXXXXXXXXX&state=gwbnsh,从而你就拿到了授权code以及自定义的state参数了;

  5. 余下步骤和正常支付流程开发步骤一样。

附件下载:源码

猜你喜欢

转载自www.cnblogs.com/soulmate/p/9200530.html