要开发微信公众号,第一步当然是要注册:微信公众平台官网:https://mp.weixin.qq.com。关于注册就不具体介绍了,前期开发测试只需要注册个人订阅号即可,真正开发使用的是开发者工具里的测试号。微信官网已经提供了详细的开发概述文档:https://developers.weixin.qq.com/doc/offiaccount/Getting_Started/Overview.html。在开发概述文档的首页已经说明了公众平台以access_token为接口调用凭据,来调用接口:
对我们而言,一般个人电脑是没有公网固定IP地址的,因此要想直接获取access_token就必须要设置IP白名单(不需要使用内网穿透之类的工具),微信公众平台已经提供了IP白名单设置。所谓IP白名单就是说,只有白名单内的IP地址才可以拿着我的id和secret去取我的assess_token,设置方式流程如下:登录微信公众平台—〉开发—〉基本配置:IP白名单。这里我们应该设置的是本机的外网IP地址而不是本机的IP地址,那么如何获取这个外网IP地址呢?很简单,打开百度输入:本机IP地址查询
如下图,万能的百度会告诉你结果,将查询到的这个IP地址设置了IP白名单即可。
现在来验证获取access_token是否成功。同样在公众平台找到:开发—〉开发者工具—〉在线接口调试工具:
进入“在线接口调试工具”,选择接口类型和接口列表并输入你的appid和secret,单击“检查问题”,如图:
已经成功返回了access_token,说明IP白名单设置是成功的。接下来创建一个asp.net core 2.2的测试项目。
打开VS2019创建项目:
选择"ASP.NET Core Web应用程序”:
输入项目名称后单击创建:
这里我们选择的是“空”项目,创建一个asp.net core的空项目,创建完成后在解决方案中打开“launchSettings.json”
双击打开launchSettings.json,
这里先将"sslPort设置为0,表示不启用https,因为本机外网默认 使用80端口调试。
由于此时创建的是空项目,因此打开“Startup.cs”看到的是下面的内容:
接下来先删除上面红框的内容,并启用mvc( webapi需要),修改后代码如下:
蓝色行是新加入的代码,以启用MVC(asp.net core2.2的webapi也是包括在MVC之中的)。接下来在项目中创建webapi需要的文件夹controllers并右键单击该文件夹:
选择“控制器”,
上图选择“API控制器-空”,创建完成后如下图:
再创建一个Models文件夹并添加一个普通类,如图:
代码如下:
现在打开“TokenController.cs”,测试通过代码获取access_token,写入代码:
现在运行程序,在地址栏输入api 对应的url可以看到已经成功获取到access_Token值。
至此成功使用asp.net core2.2从本机获取到了微信公众号的access_Token。