1、微信的各个平台

微信开放平台,面向开发人员,为网站、App 提供微信第三方登录功能,为 App 提供支付功能(通过客户端 sdk 拉起微信客户端);
微信公众平台,对应的是公众号,包括订阅号、服务号、企业号,面向运营人员和开发人员,运营可以直接登录公众号管理后台查看公众号的各种指标,开发则是通过调用微信提供的各种接口来增强公众号的功能;
微信商户平台,用户通过微信支付的钱,最终到达商户账号。无论是开放平台还是公众平台,涉及到支付,都需要商户平台账号
简单提一下订阅号与服务号的区别
订阅号,主要用来发文章,微信的聊天列表中会有“订阅号”这一项,里面全都是订阅号的推送;正常情况下订阅号每天只能群发一条消息,但是媒体类的除外,比如人民日报、36 氪等,就是每天可以发多条,猜测应该是可以找微信申请的,只要资质够了,就可以一天发多条吧(未实际验证过,只是猜测)。
服务号,顾名思义,主要是提供服务的,比如银行的服务号,你可以在服务号里面查询一些信息,看一下服务号的菜单大致就了解了服务号提供的哪些服务,服务号在微信聊天列表中是单独的一项,不会像订阅号那样合并起来。服务号其实也可以像订阅号那样群发消息,但是每个自然月只能发 4 次,可以看出是跟订阅号的侧重点完全不同的,两者没有包含被包含的关系,谁也没法取代谁,也不是简单的权限高级低级的区别。
公众平台群发规则:http://kf.qq.com/faq/120911VrYVrA131025QniAfu.html

2、服务号账号介绍

服务号是只能企业申请的,个人只能申请订阅号。服务号相比订阅号有更多的接口权限,这样服务号就能提供更多的自定义功能。
服务号要能提供完整的功能,还需要进行“微信认证”,提交一些公司资质信息,认证费 300 元,微信认证成功之后,才能获得完整的服务号接口权限。
服务号账号的登录还是比较严格的,每次登录都需要管理员扫码确认。当然,管理员可以绑定运营者微信号(http://kf.qq.com/faq/120911VrYVrA141211FbEnq2.html),这样添加为运营者的人就可以自己扫码登录了,不需要每次都“惊动”管理员

3、服务号管理后台介绍

登录到管理后台,运营可以直接在管理后台进行一系列操作,例如:
公众号设置:设置关注公众号后发送给用户的欢迎语,设置关键词回复规则和内容,设置收到消息自动回复内容,自定义菜单
运营操作:群发消息,回复用户消息
查询统计:用户分析、菜单分析、图文分析、消息分析

4、服务号开发

至此,开发终于登场了~~~
先来看一下开发之前需要进行的一系列配置。
服务号管理后台左边栏最下面有一项“开发”,我们来一次看一下各个子项
基础配置
公众号开发信息,AppID 和 AppSecret 是必需的,其中 AppID 是可以暴露的,但是 AppSecret 是绝对不能暴露的。在管理后台里面也是不显示的,设置是无法查看的,要是忘记了,那只能重置(初始化或重置的时候是可以看到的,如果错过了这个时机,那后面就看不到了)。如果重置,就会影响已有服务,所以一定要备份好 AppSecret,同时不要泄露。
IP 白名单,需要填写开发环境、测试环境、正式环境的服务器 IP,只有白名单中的 IP 才允许请求微信获取 access_token,有了 access_token 才能有权限调用微信的各种接口。access_token 的具体介绍,参考公众平台文档--获取 access_token(https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140183),这里不再赘述。
服务器配置,参考公众平台文档--接入指南(https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421135319),这里不再赘述。注意,如果服务器配置开启,则相当于服务器完全接管服务号,甚至可以夸张的说,有了服务器接收微信服务端的所有推送事件,服务号管理后台就可以废弃了。服务器配置开始后,管理后台有一些配置就失效了,比如,自动回复功能,不能在后台配置了,只能通过程序回复;自定义菜单,也只能通过程序来设置,不能再页面上设置了。
有了上面的这些配置,就可以开始开发、调试公众平台接口了。
开发者工具
开发者文档,文档对于开发者的重要性就不用说了,
在线接口调试工具,方便直接调试公众平台接口,不用开发者自己写调试程序,
web 开发者工具,相当于一个可以在 pc 上运行的微信浏览器,方便模拟手机微信,
公众平台测试账号,这个是非常有帮助的,尤其是在服务号未进行微信认证的情况下(很多接口还没有开放)。在这个测试账号里面基本上所有的接口权限都开放,在开发测试阶段是非常有帮助的
接口权限,可以查看所有接口是否有权限调用。部分接口还需要额外的配置,比如:网页授权获取用户信息,需要配置网页授权域名
介绍到这里,之后的开发就需要结合公众平台文档,自力更生了。虽然微信的文档不是特别条理,但是只要耐心一点,仔细一点,基本还是比较顺利的。

5、公众平台与开放平台打通(unionid 机制)

公众号,可以拿到关注用户的信息,openid、昵称、头像;
开放平台,第三方登录也可以拿到用户的信息,openid、昵称、头像;
其中,昵称、头像是相同的,也都是用户自己随时可以修改的,如果要唯一确定一个微信用户,只能通过微信 id。
但是,公众平台的 openid 是用户在公众号里面的唯一 id,换了公众号,openid 也会跟着变;开发平台的 openid 是用户在开发平台里面的唯一 id,与公众平台的 openid 是不同的。所以无法通过 openid 来唯一确定一个用户。
微信为了解决这个问题,提供了 unionid,只要公众平台、开放平台是关联起来的,那么同一个微信用户即使是在不同平台里面也都是相同的 unionid
平台之间打通,需要再开放平台中绑定公众号,绑定成功后,无论是在哪个平台获取用户信息,都会携带 unionid 字段,开发者可以根据 unionid 将不同平台下的同一个用户识别出来。
----------------------------------------------------------------------------------------------------------
本文没有介绍相关代码,只是对整个开发过程的一个梳理和总结,如果能对大家,尤其是新手,有些许帮助,我也感到非常荣幸。
欢迎大家批评指导,交流学习~~~

微信服务号开发整体流程相关推荐

  1. 【微信服务号开发】01.接入指南

    前言 当作为小白,来开发微信的时候,只依据官方文档来开发是很痛苦的,怎么配置,怎么编写代码文件,怎么让映射到外网访问,问题很多,比较痛苦. 下面内容来解决这些痛点,有不懂的问题,可以在下面留言评论哦. ...

  2. 微信服务号开发-获取用户位置信息

    微信服务号开发-获取用户位置信息 在微信公众号开发的中,获取用户位置信息是非常常见的功能需求,通过用户的位置信息,可以做一些地图导航,以及基于LBS的营销活动. 下面将介绍微信服务号获取用户位置信息的 ...

  3. 微信服务号开发的完整人性化版攻略

    前言: 本次要讲述的是一个本人完整微信服务号开发的经验分享,微信服务号的作品:请搜索微信号:zjaisino,名称:爱信诺Aisino一站式服务平台.(这里声明,这不是打广告,只是为了方便各位开花攻城 ...

  4. CSDN学霸课表——微信公众号开发全部流程

    < 微信公众号开发全部流程> 我是一名php开发菜鸡,目前觉得自己技术不太行了,所以想提高一下自己的技术水平,然而没找到更好的方法,所以我打算将所有的微信接口全部写一遍,一边学习,一边开发 ...

  5. python微信公众号开发教程_python微信公众号开发简单流程实现

    本文为大家分享了python微信公众号开发的简单过程,供大家参考,具体内容如下 网上有很多微信公众号的开发教程,但是都是好几年前的了,而且很多都是抄袭其他人的,内容几乎一模一样.真的无语了.只好自己总 ...

  6. Springmvc集成jfinal微信 微信服务号开发

    最近研究微信服务号开发,发现jfinal家封装的SDK还是不错的,于是就定下来用它了. 那么问题来了:git上有demo,那么如何集成到自己的项目中呢?研究研究呗.我们框架使用的是springmvc, ...

  7. 微信服务号开发时获取授权遇到的问题

    1.问题 (遇到的问题)微信服务号开发时获取授权遇到的问题 公众平台返回原始数据为: 错误代码-40164,错误信息-invalid ip, not in whitelist hint: [59FKq ...

  8. 微信服务号开发-整合微信支付

    最近的项目在对接微信支付,所以抽出一些时间,将方法总结一下: 欢迎加群交流:724225958 官方开发文档:https://pay.weixin.qq.com/wiki/doc/api/jsapi. ...

  9. 微信公众号开发java流程_微信公众号开发教程java 编程语言的特点及选择

    微信公众号开发教程java 编程语言的特点及选择 微信公众号为用户提供了相关的工具,来对微信公众号进行一个简单的开发.但是如果想实现一些复杂的功能,其实还是要借助于一些编程语言的使用.所以要了解,在微 ...

  10. 基于OpenJWeb平台的微信服务号开发培训-生成带参数二维码

    因为OpenJWeb平台已经集成了微信服务号接口,所以在OpenJWeb平台上开发微信服务号会起到事半功倍的作用.本文介绍如何使用微信公众号接口生成带参数二维码功能. 下面是开发及操作过程: (1)首 ...

最新文章

  1. 下一跳网关和转发接口的使用情况
  2. c++新特性11 (10)shared_ptr六”构造函数unique_ptr参数“
  3. 学习难?求职难?90分钟点亮你的AI求职之路!
  4. WINCE 加入驱动DLL步骤
  5. Python之list添加新元素
  6. 使用Excel函数时,注意函数对于大小写的区分(vlookup函数不区分大小写)
  7. html select 事件 jquery,通过jquery触发select自身的change事件
  8. 5.3 Zend_Log_Filter
  9. matlab中diamond,my-DIAMOND 经典的莫泰识别分析软件 ,在matlab平台下 238万源代码下载- www.pudn.com...
  10. ubuntu下android刷机,Ubuntu下android刷机教程
  11. magisk安装失败_俄罗斯官改MIUI MiRoom安装刷入教程
  12. 台式计算机电源接线图,​台式机硬盘电源线接法【图解】
  13. DES方式加解密的简单介绍
  14. Solide work每日一练
  15. 基于java植物养护管理系统ssm
  16. Canvas画各种线
  17. 机房管理系列(1) 联想保护系统EDU7.5在同传CMOS参数后奔溃的解决办法
  18. 18天精读掌握《费曼物理学讲义卷一》 第2天 2019.6.13
  19. 中华英才网后续难雄起
  20. JavaScript——易班优课YOOC课群在线测试自动答题解决方案(十四)自动刷题

热门文章

  1. 2018.11.05._PYTHN_DJANGO_CLASS 144~CLASS147
  2. linux使用客户端连接redis,使用redis客户端连接windows和linux下的redis并解决无法连接redis的问题...
  3. 个人信息安全规范----2、个人信息安全基本原则
  4. php 公众号多图文消息,微信公众号怎么发布号多图文消息?微信公众号发布号多图文消息的方法...
  5. Java的jdk版本梳理
  6. 搜狐全体员工遭遇工资补助诈骗,冲上微博热搜第一
  7. 小程序tabBar无效
  8. matlab仿真光学拍,MATLAB光学干涉实验的仿真研究
  9. FFmpeg代码实现视频转jpg图片
  10. Pickit 3 Programmer使用说明及 烧写程序步骤