微信公众号本地开发流程
<p><span style="font-size: 16px">1.建立测试号</span></p><p><span style="font-size: 16px">直接打开链接,微信扫码登录即可测试号管理页面 <span style="color: rgba(0, 0, 0, 1); mso-style-textfill-fill-color: black; mso-style-textfill-fill-alpha: 100.0%">https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index ,如下图所示</span></span></p>
<p><span style="color: rgba(0, 0, 0, 1); font-size: 16px"><img src="https://img2018.cnblogs.com/i-beta/1312098/201912/1312098-20191203143550282-669932964.png"></span></p>
<p> </p>
<p> </p>
<p><span style="font-size: 16px"> </span></p>
<p><span style="font-size: 16px"><span style="color: rgba(0, 0, 0, 1); mso-style-textfill-fill-color: black; mso-style-textfill-fill-alpha: 100.0%">2.在测试号中的【网<span style="color: rgba(0, 0, 0, 1)">页授权</span>获取用户基本信息】中,设置回调地址IP(<span style="color: rgba(255, 0, 0, 1)">localhost,127.0.0.1均不能使用,请使用局域网IP或域名,测试</span></span><span style="color: rgba(255, 0, 0, 1)">号回调地址支持域名和ip,正式公众号回调地址只支持域名。</span>)</span></p>
<p><span style="color: rgba(0, 0, 0, 1); font-size: 16px"><img src="https://img2018.cnblogs.com/i-beta/1312098/201912/1312098-20191203144054304-1619569639.png"></span></p>
<p> </p>
<p> </p>
<p><span style="font-size: 16px"> </span></p>
<p> </p>
<p><span style="color: rgba(0, 0, 0, 1); font-size: 16px">3.下载微信开发者工具,选择公众号网页开发</span></p>
<p><span style="color: rgba(0, 0, 0, 1); font-size: 16px"><img src="https://img2018.cnblogs.com/i-beta/1312098/201912/1312098-20191203144259619-1366985357.png"></span></p>
<p> </p>
<p> </p>
<p><span style="font-size: 16px"> <img src="https://img2018.cnblogs.com/i-beta/1312098/201912/1312098-20191203144313144-18368842.png"></span></p>
<p> </p>
<p> </p>
<p><span style="font-size: 16px"> </span></p>
<p><span style="font-size: 16px">4.填写要测试的地址,修改<span lang="EN-US">rediect_uri</span>回调地址, 访问腾讯服务器url规则如下:</span></p>
<p class="MsoNormal" align="left"><span style="font-size: 16px"><span lang="EN-US">https://open.weixin.qq.com/connect/oauth2/authorize?appid=</span><span style="color: rgba(255, 0, 0, 1)">你当前测试号的</span><span lang="EN-US"><span style="color: rgba(255, 0, 0, 1)">appid</span>&redirect_uri=</span><span style="color: rgba(255, 0, 0, 1)">你的接口路径<span lang="EN-US">(</span>记得<span lang="EN-US">uri</span>码</span><span lang="EN-US"><span style="color: rgba(255, 0, 0, 1)">)</span>&response_type=code&scope=snsapi_userinfo#wechat_redirect</span></span></p>
<p> </p>
<p><span style="color: rgba(0, 0, 0, 1); font-size: 16px">5.访问以上地址的话,微信服务器会转发到另一个地址,地址中包含code,可以通过code获取到用户的openId(openId是微信用户唯一凭证)</span></p>
<p><span style="font-size: 16px">例如:http://www.baidu.com/spic&code=071kLtzG0DosVc2TypxG0RpwzG0kLtzF&state=</span></p>
<p><span style="font-size: 16px">http://<span style="color: rgba(255, 0, 0, 1)">第4步中填写的接口路径</span>?code=<span style="color: rgba(255, 0, 0, 1)">微信服务器返回的code值</span>&state=</span></p>
<p><span style="font-size: 16px">注意,每次访问第4步的地址,微信服务器都会返回不同的code,code只能使用一次,用完就失效了,每个微信用户的不同code,都指向用户唯一的oppenId</span></p>
<p><span style="font-size: 16px">根据code获取用户openId的方法,可以前端来获取,也可以通过后端来获取,前端获取的方法我之前的博客里有写,这里不再叙述了~~</span></p>
<p> </p>
<p><span style="font-size: 16px">6.获取到用户的唯一凭证openId,然后可以根据openId来判断用户登录和认证的状态,然后根据业务执行不同的操作,如下图所示</span></p>
<p><span style="font-size: 16px"><img src="https://img2018.cnblogs.com/i-beta/1312098/201912/1312098-20191203150130770-1063771484.png"></span></p>
<p> </p>
<p><span style="font-size: 16px"> </span></p>
<p><span style="font-size: 16px">7.设置微信公众号的自定义菜单</span></p>
<p><span style="font-size: 16px">打开链接 https://mp.weixin.qq.com/debug/ ,选择基础支持,让填写测试号的<span style="font-family: "Microsoft YaHei", 微软雅黑, Helvetica, 黑体, Arial, Tahoma">appID和</span><span style="font-family: "Microsoft YaHei", 微软雅黑, Helvetica, 黑体, Arial, Tahoma">appsecret来获取token,如图所示,然后选择自定义菜单功能,填入token和用户自己写好的菜单栏JSON,来检验菜单是否正确,操作如图所示</span></span></p>
<div class="cnblogs_code">
<pre><span style="font-size: 16px"><span style="color: rgba(0, 0, 0, 1)">{
"button": [
{
"name": "查询",
"sub_button": [
{
"type": "view",
"name": "菜单目录",
"url": "https://open.weixin.qq.com/connect/oauth2/authorize?appid=XXXXXXXX</span><span style="color: rgba(255, 0, 0, 1)">&redirect_uri</span>=XXXXXXXX<span style="color: rgba(255, 0, 0, 1)">&response_type</span>=code<span style="color: rgba(255, 0, 0, 1)">&scope</span><span style="color: rgba(0, 0, 0, 1)">=snsapi_userinfo#wechat_redirect",
"sub_button": [ ]
},
{
"type": "view",
"name": "菜单目录",
"url": "https://open.weixin.qq.com/connect/oauth2/authorize?appid=XXXXXXXX</span><span style="color: rgba(255, 0, 0, 1)">&redirect_uri</span>=XXXXXXXX<span style="color: rgba(255, 0, 0, 1)">&response_type</span>=code<span style="color: rgba(255, 0, 0, 1)">&scope</span><span style="color: rgba(0, 0, 0, 1)">=snsapi_userinfo#wechat_redirect",
"sub_button": [ ]
},
{
"type": "view",
"name": "菜单目录",
"url": "https://open.weixin.qq.com/connect/oauth2/authorize?appid=XXXXXXXX</span><span style="color: rgba(255, 0, 0, 1)">&redirect_uri</span>=XXXXXXXX<span style="color: rgba(255, 0, 0, 1)">&response_type</span>=code<span style="color: rgba(255, 0, 0, 1)">&scope</span><span style="color: rgba(0, 0, 0, 1)">=snsapi_userinfo#connect_redirect=1#wechat_redirect",
"sub_button": [ ]
}
]
},
{
"type": "view",
"name": "菜单目录",
"url": "https://open.weixin.qq.com/connect/oauth2/authorize?appid=XXXXXXXX</span><span style="color: rgba(255, 0, 0, 1)">&redirect_uri</span>=XXXXXXXX<span style="color: rgba(255, 0, 0, 1)">&response_type</span>=code<span style="color: rgba(255, 0, 0, 1)">&scope</span><span style="color: rgba(0, 0, 0, 1)">=snsapi_base#connect_redirect=1#wechat_redirect",
"sub_button": [ ]
},
{
"type": "view",
"name": "菜单目录",
"url": "https://open.weixin.qq.com/connect/oauth2/authorize?appid=XXXXXXXX</span><span style="color: rgba(255, 0, 0, 1)">&redirect_uri</span>=XXXXXXXX<span style="color: rgba(255, 0, 0, 1)">&response_type</span>=code<span style="color: rgba(255, 0, 0, 1)">&scope</span><span style="color: rgba(0, 0, 0, 1)">=snsapi_base#connect_redirect=1#wechat_redirect",
"sub_button": [ ]
}
]
}</span></span></pre>
</div>
<p> </p>
<p><span style="font-family: "Microsoft YaHei", 微软雅黑, Helvetica, 黑体, Arial, Tahoma; font-size: 16px"><img src="https://img2018.cnblogs.com/i-beta/1312098/201912/1312098-20191203150557343-1241079225.png"></span></p>
<p> </p>
<p><span style="font-size: 16px"> </span></p>
<p><span style="color: rgba(0, 0, 0, 1); font-size: 16px"><img src="https://img2018.cnblogs.com/i-beta/1312098/201912/1312098-20191203150708175-37965961.png"></span></p>
<p> </p>
<p><span style="font-size: 16px"> </span></p>
<p><span style="color: rgba(0, 0, 0, 1); font-size: 16px"><img src="https://img2018.cnblogs.com/i-beta/1312098/201912/1312098-20191203150831003-302908640.png"></span></p>
<p> </p>
<p><span style="font-size: 16px"> </span></p>
<p class="MsoNormal" align="left"> 8.其他就是前端项目的搭建(我前端项目采用的Nuxt + Vant框架)、项目内部业务处理了~~</p>
<p> </p>
<p> </p>
<p>嗯,就酱~~</p><br><br>
来源:https://www.cnblogs.com/jin-zhe/p/11976913.html
頁:
[1]