如何进行微信公众号开发的本地调试的方法


Posted in Javascript onJune 16, 2019

微信团队为广大的开发者提供了一个测试账号。该帐号无需公众账号,快速申请接口测试,直接体验和测试公众平台所有高级接口。这么好用的功能,只需要要你有一个手机,手机上安装了一个微信即可。

地址:https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login

如何进行微信公众号开发的本地调试的方法

登录后,会得到一个微信号,和测试好的相关信息。appID,appsecret。

如何进行微信公众号开发的本地调试的方法

接口配置信息,js接口安全域名配置按照生产环境的配置即可。

下面重点开始了。已经有了一个可供测试的公众号,如何进行测试呢,最直接的办法是,在本地开发环境把已经运行的生产环境的公众号配置成刚申请的这个开发账号即可,但显然这个方法蠢哭了。

我们采用的方法是,在配置文件上增加一个参数的方式。比如我们生产环境的微信配置信息都写在wechat-config.xml中,这个时候,增加另一个配置文件wechat-config-yimiyan.xml。启动jvm时增加参数

-Dwechat-config=yimiyan。程序中中需要稍加修改。

例如原本系统启动时读取wechat-config.xml文件

WeChatUtils.class.getResourceAsStream("/wechat-config.xml");

现在修改为:

String wechatConfig = System.getProperty("wechat-config");
//得到的是刚刚我们添加的参数-Dwechat-config的值,即yimiyan

将原本的读取配置文件修改为:

WeChatUtils.class.getResourceAsStream("/wechat-config-"+wechatConfig+".xml");

这样,每个开发的小伙伴都可以在自己的环境上进行测试了。

准备就绪之后,开始下一步的操作--配置菜单。

用手机扫描页面上的二维码后,关注了这个测试公众号,是没有菜单的,这个时候要配置菜单怎么办呢。

有两种方式,使用postman工具或者使用微信提供的调试接口。

笔者比较懒,直接用了微信的接口调试工具设置的。地址:https://mp.weixin.qq.com/debug

如何进行微信公众号开发的本地调试的方法

第一步,获取access_tocken

输入测试公众号页面的appID和appsecret,点击检查问题

如何进行微信公众号开发的本地调试的方法

获取到access_token之后,使用这个access_token跟测试公众号设置菜单。接口类型选择自定义菜单,填入刚刚获取到的access_token,以及菜单的json串。

如何进行微信公众号开发的本地调试的方法

点击检查问题后,如果设置成功,结果如下

如何进行微信公众号开发的本地调试的方法

这个时候,在用微信扫一扫测试公众号的二维码,应该就会有菜单了,但是笔者在测试的时候发现,不知道是延迟还是缓存,第一次设置还好,多设置几次,要取关,清楚手机历史等操作,才会发现新菜单生效了。

到目前为止,我们一切的准备工作就基本完成了。在测试公众号里面,点击菜单,享受着成功的喜悦的时候,满心欢喜的点击,蹦出来的是redirect_uri:参数错误

如何进行微信公众号开发的本地调试的方法

这是什么鬼

最后一步的配置:

在测试微信公众号那个页面,那个页面很长,往下拉,找到网页服务--》网页账号--》网页授权获取用户基本信息,点击修改,配上外网能访问你测试环境的ip或者域名即可。

如何进行微信公众号开发的本地调试的方法

整个配置最重要的一点就是,你需要拥有一个能通过外网访问你的测试环境的域名或者ip。

NB:这里需要注意一点,如果这个地址填写的不正确,将会报错如下。此处只需填写域名即可,授权微信访问这个域名,具体要访问哪个项目哪个方法,在程序中控制。

如何进行微信公众号开发的本地调试的方法

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery javaScript捕获回车事件(示例代码)
Nov 07 Javascript
javascript框架设计读书笔记之字符串的扩展和修复
Dec 02 Javascript
详解JavaScript语言的基本语法要求
Nov 20 Javascript
基于Jquery实现焦点图淡出淡入效果
Nov 30 Javascript
前端实现文件的断点续传(前端文件提交+后端PHP文件接收)
Nov 04 Javascript
详解vue之页面缓存问题(基于2.0)
Jan 10 Javascript
javascript判断元素存在和判断元素存在于实时的dom中的方法
Jan 17 Javascript
使用Browserify来实现CommonJS的浏览器加载方法
May 14 Javascript
利用ECharts.js画K线图的方法示例
Jan 10 Javascript
javascript数据结构之多叉树经典操作示例【创建、添加、遍历、移除等】
Aug 01 Javascript
vue增加强缓存和版本号的实现方法
May 01 Javascript
vue-amap根据地址回显地图并mark的操作
Nov 03 Javascript
详解vue微信网页授权最终解决方案
Jun 16 #Javascript
浅谈一种让小程序支持JSX语法的新思路
Jun 16 #Javascript
JavaScript 处理树数据结构的方法示例
Jun 16 #Javascript
JavaScript中的ES6 Proxy的具体使用
Jun 16 #Javascript
简谈创建React Component的几种方式
Jun 15 #Javascript
JS中的一些常用的函数式编程术语
Jun 15 #Javascript
JavaScript模块管理的简单实现方式详解
Jun 15 #Javascript
You might like
Banner程序
2006/10/09 PHP
PHP 图片文件上传实现代码
2010/12/29 PHP
ecshop 批量上传(加入自定义属性)
2012/03/20 PHP
Discuz批量替换帖子内容的方法(使用SQL更新数据库)
2014/06/23 PHP
PHP实现算式验证码和汉字验证码实例
2015/03/09 PHP
PHP通过反射动态加载第三方类和获得类源码的实例
2015/11/27 PHP
PHP设计模式(一)工厂模式Factory实例详解【创建型】
2020/05/02 PHP
jQuery对象与DOM对象之间的转换方法
2010/04/15 Javascript
《JavaScript高级程序设计》阅读笔记(三) ECMAScript中的引用类型
2012/02/27 Javascript
jQuery平滑旋转幻灯片特效代码分享
2015/09/07 Javascript
javascript绘制漂亮的心型线效果完整实例
2016/02/02 Javascript
node 命令方式启动修改端口的方法
2018/05/12 Javascript
微信小程序异步API为Promise简化异步编程的操作方法
2018/08/14 Javascript
深入浅析Node.js 事件循环、定时器和process.nextTick()
2018/10/22 Javascript
微信小程序canvas.drawImage完全显示图片问题的解决
2018/11/30 Javascript
JavaScript的查询机制LHS和RHS解析
2019/08/16 Javascript
利用python 更新ssh 远程代码 操作远程服务器的实现代码
2018/02/08 Python
Python cookbook(数据结构与算法)找出序列中出现次数最多的元素算法示例
2018/03/15 Python
python 处理数字,把大于上限的数字置零实现方法
2019/01/28 Python
Python文件打开方式实例详解【a、a+、r+、w+区别】
2019/03/30 Python
使用 Python 玩转 GitHub 的贡献板(推荐)
2019/04/04 Python
Python3 Tkinter选择路径功能的实现方法
2019/06/14 Python
Python函数中的可变长参数详解
2019/09/12 Python
python kafka 多线程消费者&手动提交实例
2019/12/21 Python
python实现大战外星人小游戏实例代码
2019/12/26 Python
打包PyQt5应用时的注意事项
2020/02/14 Python
Windows环境下Python3.6.8 importError: DLLload failed:找不到指定的模块
2020/11/01 Python
ProBikeKit澳大利亚:自行车套件,跑步和铁人三项装备
2016/11/30 全球购物
荷兰网上鞋店:Ziengs.nl
2017/01/02 全球购物
业务代表的岗位职责
2013/11/16 职场文书
计算机通信专业推荐信
2014/02/22 职场文书
路政管理求职信
2014/06/18 职场文书
初中班主任培训心得体会
2016/01/07 职场文书
如何用JS实现网页瀑布流布局
2021/04/24 Javascript
SpringCloud之@FeignClient()注解的使用方式
2021/09/25 Java/Android
Python3使用Qt5来实现简易的五子棋小游戏
2022/05/02 Python