公众号开发-----准备工作

Posted dennis-mi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了公众号开发-----准备工作相关的知识,希望对你有一定的参考价值。

公众号开发(一)-----准备工作

要进行公众号服务的开发,你需要做以下的准备:

  1. 申请一个公众号,订阅号是都可以开通的,如果是服务号就更好了。
  2. 有一个服务器,阿里云或者其他的都行,重要的是有公网IP。
  3. 需要会编程,熟悉基本的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处的消息加解密方式选择明文模式,方便进行调试。

开发环境的搭建工作就到这个地方了。

以上是关于公众号开发-----准备工作的主要内容,如果未能解决你的问题,请参考以下文章

微信公众号开发之准备工作

微信公众号开发(准备工作)

NodeJs 开发微信公众号准备工作

微信开发(准备工作简版)

Python微信公众号开发

微信公众号硬件开发杂谈