###缘起

我想这个解决方案对许多在校生是十分有用的。

喜欢折腾新技术的大多是我们这些在校学生。所以把这个方案分享给大家。

对于我们,ip都是校内网的。也就是说它是局域网。

而微信开发模式中服务器配置要求填写公网ip,并且只允许80端口

解决方案有两种:

1 买个vps或使用公有云(bae,sae神马的)

vps太贵,bae,sae神马的调试很不方便。我采用了方案2

2 穿透内网。首先想到的是花生壳,用于穿透内网,原理上是可行的,不过linux下使用极其麻烦
某天闲逛github的时候,发现这个东东ngrok (伟大的github!!),它是跨平台的!!

方案2最大的最大好处是你完全用你最熟悉的环境来开发!!

###如何使用

使用方法极其简单。
首先到官网里下载. 它是免安装的。 解压之后,进入目录,在终端里执行./ngrok [端口号]. 该指令的意思是把[端口号]映射到外网。
之后终端里会有一个ngrok给你分配的地址,这样就映射成功了!

###开始部署 首先在本地搭起微信后台(我使用WeRoBot这个框架)

  • cd /tmp/
  • pip install werobot
  • 新建weixin.py如下:
1
2
3
4
5
6
7
8
9
import werobot

robot = werobot.WeRoBot(token='tokenhere') #填写你的token

@robot.handler
def echo(message):
    return 'Hello World!'

robot.run()
  • python weixin.py

好的,命令行提示我们在127.0.0.1:8888启动了服务

接着我们只要把它映射到外网就行
回到ngrok解压目录下,执行./ngrok 8888
我们将在命令行里看到一个分配的地址,把它粘帖到微信服务器配置
这时候就可以调戏你的微信公众号啦。
bingo~看到了吧,可爱又迷人的“hello world”出现了。
是的 ,就是这么简单,接下来的事就是发挥你的想像力的时间啦。

Enjoying it.