公众号开发(一)-----准备工作
要进行公众号服务的开发,你需要做以下的准备:
- 申请一个公众号,订阅号是都可以开通的,如果是服务号就更好了。
- 有一个服务器,阿里云或者其他的都行,重要的是有公网IP。
- 需要会编程,熟悉基本的HTTP请求和回复。
1、申请公众号
公众号可以去微信公众平台申请,目前应该是一个身份证可以申请2个公众号。如果你有公司或者企业资质,就可以申请服务号了,功能更加多一些。
2、服务器的相关配置
因为微信公众号的服务器对接需要使用80或者443端口(HTTP服务或者HTTPS服务),如果这些端口被其他的服务占用了,我们需要用Nginx实现子域名配置,来实现80端口的复用。
举例如下,我的博客 https://www.dennisthink.com 占用了80和443端口,那么我在域名解析服务可以配置 http://wechat.dennisthink.com 子域名进行HTTP转发,转发到8080端口。这样在同一个服务器的IP上,就可以进行微信服务的配置了。
Nginx的配置一般在 /etc/nginx/conf.d/
目录下,配置的示例如下:
## Apache backend for www.redis.com.cn ##
## Start www.redis.com.cn ##
server {
listen 80;
server_name wechat.dennisthink.com;
access_log /var/log/WXChatRelease/access.log main;
error_log /var/log/WXChatRelease/error.log;
#私钥文件
## send request back to apache ##
location / {
proxy_pass http://ServerIP:9002/;
#Proxy Settings
proxy_redirect off;
proxy_connect_timeout 300;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
}
}
ServerIP的地方要替换为自己的服务器的IP地址,
server_name的地方要替换为自己配置的子域名。
如果是阿里云的云主机的话,需要配置相应的防火墙传入和传出规则。
3、本地环境搭建
因为在本地进行开发和调试更加方便,所以我们需要在本地搭建开发环境。通过使用XShell的端口转发功能,我们可以将服务器的HTTP请求转发到本地,这样就可以方便地在本地进行开发调试了。
3.1 XShell配置端口转发
XShell配置端口转发的配置界面为
在新建会话属性的时候 选择 连接
--->SSH
--->隧道
,在界面的右侧会有新建
按钮,弹出的对话框如图所示。
注意事项:
- 1处的 类型要选择传入,意思是将远程的请求转发到本地。
- 2处的源主机填写自己的云服务器主机地址,侦听端口选择配置的Nginx的转发端口。
- 3处的目标主机选择localhost,目标端口选择本地调试的时候,HTTP的监听端口。
3.2 公众号界面的配置
登录公众号以后,在页面的左侧拉到最下方,可以看到开发
选项,选择基本配置
页面。
在右侧页面配置的*,可以看到服务器配置
的选项,各选项的基本参数如下。
- 1处即为Nginx配置的子域名服务器的地址加上一个URI。
- 2处为Token令牌,用来对服务器配置进行验证的,可以自己设置。
- 3处为消息加密的密钥,在消息加密的情况下使用,我们目前的调试使用明文模式,不会用到。
- 4处的消息加解密方式选择明文模式,方便进行调试。
开发环境的搭建工作就到这个地方了。