微信二次开发——准备篇

前段时间接到一个微信开发兼职工作,需求的功能很简单,只需要在用户关注微信公众号的时候返回欢迎信息,用户点击的时候顺便引导它注册成为会员;然后设置菜单,做几个菜单项,让会员查询积分,了解公司相关活动的信息。需求方谈好之后,我就开始配置环境,编写代码了。但是进行的获取用户 Openid 的相关工作时,才发现他们公司没有域名,更别说域名备案了。就这样,因为缺少必要的条件,项目不得不停下来。很可惜!

后来我想了下,这主要是我在评估项目的可行性时没把工作做到位,只是粗略的了解了一下就开始执行了,导致中途遇到问题,被迫停工!这样,两个晚上的时间就这样浪费了,很不值!

微信开发需要提前具备有一定的条件才能顺利完成的,这是我那次经历的一个认识。现在就是想梳理下自己的微信开发经验,整理成文章,一个是当作笔记,方便日后回顾;一个是将一些基础的代码准备好,方便下次快速启动一个微信项目。

本文只是针对认证的微信服务号的,因为它具备的功能较多,其它类型的暂时不考虑了。以下是微信二次开发之前需要了解的一些信息:

1、域名与服务器

  • 已经备案的域名
  • 搭建有 PHP 环境的 www 服务器

在微信接口配置信息中需要到域名,这里填写的域名不需要备案也可以成功配置。但是其它地方的域名只有通过备案之后才能配置成功,一处是获取网页授权获取用户基本信息的地方,一处是 JS 接口安全域名的地方,如果需要微信支付功能的话,微信支付安全域名也是要通过备案才行的。

显而易见,服务器主机这个也是必须的,虚拟主机或者独立主机都可以,只要能通过公网来访问就好。至于是否有 PHP 解析环境,什么样的 www 服务器程序,这到不是必须的,可根据自己熟悉的来弄。我用惯的是 PHP 和 Apache,所以写在这里了。

2、该公众号是否有使用第三方管理平台

是否使用第三方管理平台这个是要了解清楚的,而且还要了解是使用那个第三方管理平台,现在比较热门的是微擎、微盟等等。如果使用这些管理平台的话,他们可能会接管微信的服务调用接口的。也就是说,用户与公众号进行的一些互动基本上都会经过这些平台,这些平台可以根据设定进行回复,或者将用户的操作再次分发到我们自己的程序来处理。

这一点也是要在开发之前了解清楚的。如果真的接入第三方平台,那就需要了解如何在该平台下面做扩展,本文就不进一步讨论这个了。

3、微信配置

  • 已经通过认证的微信服务号
  • 获取 APPID 和 APPSECRET(需要管理员授权)
  • 在微信公众号管理平台里可以查看到,这是接口调用必须的。

  • 微信服务器配置
  • 也是在微信公众号里配置的,启用之后,微信用户所发的消息和事件都会转发到配置指定的服务器。

  • 配置网页授权可信域名(获取用户openid/用户基本信息)
  • 如果需要在网页中调用微信用户的基本信息,那么就必须配置此域名(需备案),否则会提示 redirect_uri 错误。

  • 配置 JSSDK 调用域名(用户分享朋友等功能)
  • 在网页中调用使用微信 JSSDK 的功能时需要配置此域名。

  • 微信支付配置(需要申请)
  • 微信支付的安全配置,所有与支付相关的 URL 必须是配置中目录下的文件才能成功。

    4、开发环境准备

    为了能够快速启动一个微信二次开发项目,我将开发需要的相关基础代码整合到一起,这样就可以专注于业务的实现了。

    • ThinkPHP 框架
    • wechat-php-sdk 第三方类库
    • 配置日记记录模块 SeasLog
    • 编写单元测试代码

    整合后的 项目地址

    END

    本文作者: chenishr

    本文标题:《微信二次开发——准备篇》

    本文地址: http://blog.chenishr.com/?p=557

    ©版权所有,除非注明, 永在路上文章均为原创,转载请以链接形式注明出处和作者细信息。

    发表评论

    电子邮件地址不会被公开。 必填项已用*标注