- 调用微信获取带参数的二维码,返回一个ticket。把ticket拼一个二维码,把完整的二维码地址和ticket返回给前端
- 前端通过ticket轮训接口,是否可以登录。
- 我们后台接收来自微信那边的回调,如果是关注则把回调给的ticket和openId绑定,如果是取消,则不管
- 前端轮训接口发现已经关注了,则把这个接口当成登录接口 ,我们建一张关系表,吧openId存起来,如果有数据,则代表已经注册了,则根据用户id去查用户表,直接把用户数据返回给前端,否则让绑定手机号码
准备工作
- 一个域名,可发布的。我是找公司的运维,吧公网https域名映射到我本地当测试。需要注意的是,ip是没有用的,要域名
- 一个服务号,我是叫运营部给的。私人的公众号是不行的,除非只是做测试,但后面也会出现一系列问题
至于微信那么,无非就是请求几个接口
这是提供测试的网站
https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index
1.查询用户信息,accesstoken和openId自己改
https://api.weixin.qq.com/cgi-bin/user/info?access_token=49_fyoVjStWztl_pUti2aejdm8KshaQZSqrtiW7Da72ftTmeLxcPRREZQBKnxS_n28t1dhYyw5RcNuILZGTpu2Dz91fDbHheeAKdsVjJ1wuUj9gfm7gOFRkT5SFtYC3TNmOlnSbpX9au84iWc6LPZEdAFAFPU&openid=ogLGa52HnfjOMwm2SHoQwkDQgeB4&lang=zh_CN
2.创建带参数的二维码的
https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token=49_fyoVjStWztl_pUti2aejdm8KshaQZSqrtiW7Da72ftTmeLxcPRREZQBKnxS_n28t1dhYyw5RcNuILZGTpu2Dz91fDbHheeAKdsVjJ1wuUj9gfm7gOFRkT5SFtYC3TNmOlnSbpX9au84iWc6LPZEdAFAFPU
3.展示二维码的
https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=gQEm8DwAAAAAAAAAAS5odHRwOi8vd2VpeGluLnFxLmNvbS9xLzAyWjJCaEZuME5lcUQxakpVYzF4MTgAAgTlMUxhAwQIBwAA
- 登录微信公众平台,配置回调地址https://mp.weixin.qq.com/
URL是你想要回调的地址;
这个token要记住,如果你找不到,等下全局找我的代码javen就可以了;
EncodingAESKey没发现有什么用,随机生成就可以了。
记得设置白名单,怎么看白名单?叫运维去搞,你本地测试的话,就直接回调,他会说某某地址不在白名单,然后你把自己的地址填进去,多试几次就好了。
配置完之后有个坑,最后面说
需要注意的是开启了服务器配置之后,基本上所有的微信公众号自带的功能你都不能用了,比如菜单栏。如果你开启了,然后关闭了,会在24H内才会好,中间别人使用公众号的功能就说是服务故障,很难办
经过讨论,如果以后运营不在微信自己的后台,而是要通过我们来调微信的接口,而且他们可能也不适应我们的新编辑器之类的东西,这是个很大的工作量,所以目前考虑的是使用第三方来委托,哪个便宜用哪个。
大部分的应该都可以,但是用之前要问清楚
可参考https://www.processon.com/login?f=index