美文网首页首页投稿
微信公众平台开发系列之必备知识

微信公众平台开发系列之必备知识

作者: 充电实践 | 来源:发表于2018-07-07 20:51 被阅读229次

    一、微信公众号开发需要准备的一些资料以及如何搭建一个测试服务器

    微信公众号开发之前,首先要有一个公众号,不同类型的公众号具备不同的接口权限。

    可以看到,如果想使用微信的很多高级接口,必须是认证之后才可以。为了开发过程中调试方便,微信为我们提供了测试账号,几乎所有的高级接口都支持,非常方便。

    (1)申请一个微信公众平台接口测试帐号:https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login,扫码登录即可。

    (2)在微信开发的时候,必须要输入UR来进行token验证,而该URL必须是外网域名。因此,需要搭建服务器。为了开发调试方便,我们可以在本地搭建服务器,然后将本地服务器的接口地址对外映射。

    二、搭建测试服务器

    使用免费的映射工具,如下工具可以使用

    1)natapp:https://natapp.cn/

    2)ngrok:https://www.ngrok.cc/

    3)nat123:http://www.nat123.com/

    我们使用natapp来演示。

    首先,打开natapp官网,下载对应版本的客户端,此处我们以Mac为例。

    下载完成后,打开终端,cd到natapp所在目录,修改权限:chmod a+x natapp,之后运行:./natapp。

    如果报如下的错:

    原因是没有在官网注册,我们在官网注册一个账号,然后登录,登录后需要进行实名认证才能购买隧道。

    映射的端口需要重点强调,微信Token验证的域名必须是80端口或443端口,如下图。所以我们此处默认就是80,这样映射的域名才能被微信访问到。

    点击免费购买后,会生成authtoken:

    接下来就可以正常运行natapp了,终端运行:./natapp -authtoken=你的authtoken,结果如下说明成功映射:

    接下来就是在Eclipse中创建web项目,我们以最简单快速的servlet实现微信token验证。由于我们使用的是Mac,映射80端口后,不能直接访问,需要额外做一些转发配置。下一篇文章我们详细讲解步骤。

    三、Mac下解决微信公众平台80端口访问问题

    MAC OS是一个基于Unix的操作系统, Unix 系统大多默认情况下非root用户是无法使用小于1024的常用端口的。而微信Token验证要求域名端口是80,这时候Eclipse中启动tomcat后,开启http服务, 通过80端口直接访问是不行的,需要做一些系统端口转发的工作。

    在终端下执行以下步骤:

    1、创建转发配置文件 :

    sudo vim /etc/pf.anchors/eclipse.tomcat.forwarding
    

    文件内容 :

    rdr pass on lo0 inet proto tcp from any to 127.0.0.1 port 80 -> 127.0.0.1 port 8080
    rdr pass on lo0 inet proto tcp from any to 127.0.0.1 port 443 -> 127.0.0.1 port 8443
    

    保存并退出。

    2、创建pf-tomcat.conf文件 :

    sudo vim /etc/pf-tomcat.conf
    

    文件内容 :

    rdr-anchor "forwarding"
    load anchor "forwarding"from "/etc/pf.anchors/eclipse.tomcat.forwarding"
    

    保存并退出。
    3、启动

    sudo pfctl -ef /etc/pf-tomcat.conf 
    

    成功启动后,会打印出以下log:

    pfctl: Use of -f option, could result in flushing of rules
    present in the main ruleset added by the system at startup.
    See /etc/pf.conf for further details.
    No ALTQ support in kernel
    ALTQ related functions disabled
    pf enabled 
    

    4、测试
    Eclipse创建一个web工程,并配置好启动的server,启动tomcat后,默认的端口是8080,浏览器访问http://127.0.0.1/web工程名,默认是80端口,可以正常访问;8080端口加上,http://127.0.0.1:8080/web工程名, 同样可以访问。

    5、关闭

    sudo pfctl -d
    

    关闭后,会打印出以下log:

    No ALTQ support in kernel
    ALTQ related functions disabled
    pf disabled
    

    也可以全部关闭

    pfctl -F all -f /etc/pf.conf
    

    相关文章

      网友评论

        本文标题:微信公众平台开发系列之必备知识

        本文链接:https://www.haomeiwen.com/subject/hbkguftx.html