微信公众号开发实时调试方法

   初充说明:微信官方目前已推出“微信Web开发者工具”,建议使用官方工具,在此下载:

http://mp.weixin.qq.com/wiki/10/e5f772f4521da17fa0d7304f68b97d7e.html#.E4.B8.8B.E8.BD.BD.E5.9C.B0.E5.9D.80  以下的内容对于反向隧道感兴趣的朋友可以了解:

    微信公众平台对开发者的支持并不友好,例如没有提供开发的 SDK,开发者中心甩手一套开发文档和一个在线调试页面,但开发者最需要的是在开过程中的本地调试,设置好断点,实时地查看程序运行流程与变量值才是最高效率的开发方式。本文将介绍用于 JFinal Weixin 开发时的调试方法。

   在介绍具体方法前,简要了解一下本地调试环境下各系统的交互过程。微信手机移动端向微信公众号应用程序发送信息的交互过程大致为:微信手机端 app ---> 腾讯微信服务器 ---> 公众平台填写的 URL 指向的服务器 ---> 本地公众号应用程序,这个过程反过来就是本地公众号应用程序向微信手机端 app 回复信息的过程:本地公众号应用程序 ---> 公众平台填写的 URL 指向的服务器 ---> 腾讯微信服务器 ---> 微信手机端 app。公众平台所填写的 URL 指向的服务器可以是你本地的机器,前提是你本地机器可以在外网访问到,本文仅讨论本地机器在外网无法被访问的情况

1、路由器有真实的公网地址,最好是静态ip

     通过设置路由器端口转发,将 80端口转发到你的本地机器即可。很多情况下路由器的外网 ip 地址仍然在另一个路由器的局域网范围内,此法失效。如果是动态 ip 还需要不断去修改微信平台的 url 指向或域名解析地址,所以此法不太实用。

2、使用 ngrok

   主要工作原理是:通过 ngrok 客户端连上 ngrok 提供的服务器,这样就打通了一个连接隧道,然后让公众平台上的 url 指向 ngrok 服务器,ngrok 服务器接收到消息后会通过隧道将信息转发到你本地的 ngrok 客户端,使用比较简单,可以参考官方文档:https://ngrok.com,不过 ngrok 速度较慢,微信服务器对实时性要求较高,每次通信超过 5 秒便超时,所以此法也不建议使用。

3:使用具有公网ip的服务器

   作为一名专业工程师,拥有公网 ip 地址的 VPS 服务器基本成了标配,阿里云 VPS 最便宜的一款每年也就几百块钱,平时挂挂自己喜欢的服务,做个站长,跑跑自己的开源项目甚爽。

   首先确保该服务器可以通过 XShell 这类 SSH连接上去,为连接配置一个反向隧道,如下图所示:

   注意红色框部分所填写的配置,连接上服远端服务以后,在本地修改一下 JFinal Weixin Demo 项目的 token 配置,再修改微信公众平台的 url 与 token 以后就可以开始调试开发了。

   如果远程服务器是 windows 系统,可以安装一个Bitvise SSH Server 软件即可将 windows 服务器打造成SSH Server 了。

    后续补充:如果上面方式还是搞不定,可以看一下 jfinal weixin WIKI 中提供的更容易的方式解决,请移步这里:http://git.oschina.net/jfinal/jfinal-weixin/wikis/JFinal-weixin-demo%E5%92%8C%E8%B0%83%E8%AF%95 。

    另外:如果开发机器是 Linux 或是 Mac,直接使用如下 linux命即可建立反向隧道:ssh -R :80:localhost:本地端口 root@远程主机ip地址

转载于:https://my.oschina.net/jfinal/blog/336861

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值