微信公众号开发问题记录备忘

以前虽有接手过 微信相关项目,但都是接手其他人留下的。之前数周,因公司新开项目,静下来读了下微信开发文档。接入过程也想对顺利。现将遇到公众号接入,支付遇到问题记录如下:

1.开发者密码(AppSecret) 与 令牌(Token) 都是干什么的,有何区别?

AppSecret :请求与微信服务器的密钥,用AppID和AppSecret等,通过接口换取access_token
获取access_token 后就可以与微信服务器通信 了,例如:发送模板消息,创建自定义菜单等等
Token:验证访问请求是否微信官方发来的。验证方法参考:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421135319
另外:填写服务器地址(URL)参数,微信要求验证访问的
所以这里总结一下,开发者密码(AppSecret) 与 令牌(Token) 的区别就是,AppSecret 用在使用微信api 场景,Token 是开发者验证请求的合法性(是否微信官方发出)
AppSecret与Token 可以在公众号基本配置里设置,如图:
%e5%be%ae%e4%bf%a1%e5%85%ac%e4%bc%97%e5%8f%b7%e5%9f%ba%e6%9c%ac%e8%ae%be%e7%bd%ae

2,微信内进行网页授权时,提示request_uri 参数错误

1.确认GET参数有没有错误
2.回调的域名与网页授权域名是否一致,微信要求域名必须完全一致,授权根域名,那么子域名是不可以的,设置方式如图:
%e5%be%ae%e4%bf%a1%e5%85%ac%e4%bc%97%e5%8f%b7%e6%8e%88%e6%9d%83%e5%9f%9f%e5%90%8d%e8%ae%be%e7%bd%ae

公众号支付:

1.授权目录注意事项:

1.设置支付授权目录。需要注意的是授权目录仅仅针对当前目录有有效,例如设置了http://xytong.cc/,如果支付页面地址是http://xytong.cc/order,这样是不行的。必须把http://xytong.cc/order也进行目录授权,如图:

设置微信公众号支付授权目录

 

2.授权目录也是区分https以及http的,例如:http://xytong.cc/order,https: //xytong.cc/order要分别设置

2.微信支付api设置

支付需要设置api 秘钥以及api证书

设置微信支付api秘钥以及证书

api 秘钥是接收数据、请求数据都要校验签名(商户、微信官方双方凭借签名参数进行身份合法性的验证)。签名生成方法参考:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=4_3

 3.微信扫码登陆:

1.创建网站应用:

在微信开放平台(https://open.weixin.qq.com)创建网站应用,填写正确的回调域名,用户扫码后微信就会通知向开发者的域名推送数据,由微信提供的unionid 就可以进行自动登陆了。设置回调域名仅仅能写一个。如图:

微信开放平台设置回调域名

2.站点多域名微信扫码登陆方案:

授权回调域名仅能填写一个,如果是多域名站点的话可以:设置一个根域名作为回调域名,通过js参数:redirect_uri控制跳转至各子域名进行回调授权

 

作者: 白金马桶

天道酬勤...

发表评论