文档章节

微信公众平台开发

CoderPeng
 CoderPeng
发布于 2016/06/20 17:50
字数 1784
阅读 69
收藏 1

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

微信公众平台开发

微信公众平台为第三方用户和有需要跟微信打通的App和Web网站提供了便利,利用微信公众平台提供的相关接口,可以 很好快速的开发出较为丰富的包括消息模板、微信支付、客服服务等等功能。

微信成本低廉 ——传统的营销推广成本高,而在微信而言本身使用是免费的,而且使用过程中只会收取低廉的流量费用,那么通过微信开展微信营销活动的成本自然非常低的。

微信定位营销定位精准——微信公众账号让粉丝的分类更加多样化和多元化,可以通过后台的用户分组和地域控制实现精准的消息推送,也就是说可以把你的不同的粉丝放在不同的分类下面。在信息发送的时候,可以针对用户的特点实现精准的消息推送。

营销信息到达率高——由于每一条信息都是以推送通知的形式发送,你所发布的每一条信息都会送到你的用户手中,到达率可以到达100%。 微信公众平台开发 开始微信公众账号开发 注册微信公众平台账号 接入微信开发 获取access_token 发布网站,验证Token 源码地址 开始微信公众账号开发

注册微信公众平台账号

微信公众平台账号分为服务号和订阅号。 微信公众平台服务号,顾名思义,主要是给客户提供服务的。一般银行和企业做客户服务用的比较多。主要功能和权限如下:

1、不用通过腾讯的微信认证,可以免费申请获得自定义菜单。 2、服务号一个月能群发4条信息。 3、服务号群发信息的时候,用户手机会像收到短信一样接收到信息,显示在用户的聊天列表当中。 4、服务号通过认证后可申请微信支付。而订阅号不能。

微信公众平台订阅号。主要是提供信息和资讯。一般媒体用的比较多。5.0版本的微信公众平台订阅号主要功能和权限:

1、微信公众平台订阅号每天都可以群发一条群发信息。群发的信息直接出现在订阅号文件夹中。 2、订阅号群发信息时候,手机微信用户将不会收到像短信那样的消息提醒。 3、在手机微信用户的通讯录中,订阅号将被放入订阅号文件夹中。同时订阅号发布的消息也会折叠在订阅号文件夹中。 4、 订阅号要获得自定义菜单,需要提交300元,申请腾讯的微信认证。

注意:目前微信已开通企业号,为企业提供相关OA方面的服务,有兴趣可以了解一下,本系列文章只针对服务号和订阅号进行研究和学习。 (1)进入微信公众平台注册自己需要的相关账号,服务号由于需要审核,所以需要等待微信那边进行审核流程通过。

Alt text

(2)目前Google上面已有很多相关的Sdk,版本支持C#、NodeJs、PHP等。本系列是在C#版本SDK础上进行的开发,可Google相关SDK,自主选择相应的版本进行自主开发。

Alt text

本系列决定跟着微信公众平台开发文档进行一步一步的学习微信开发。有兴趣的可以一起交流学习。

Alt text

接入微信开发

1.进入开发—基本配置,填写服务器配置,其中Url也就是微信服务器的中转请求的地址,此地址需要是你自己网站的站点;Token可以自己设置,Token将为微信请求进行加密的参数,微信(公众号)里的token可以理解为与对应url定义的一个密码; EncodingAESKey为消息加密密钥由43位字符组成,可随机修改,字符范围为A-Z,a-z,0-9。可以随机生成。配置填写完成过后提交,微信会向你的站点发送get请求,验证url和相关参数的有效性。

Alt text

注意:后台站点的配置必须跟微信公众平台的配置保持一致,否现微信在验证站点是否合法的时候,返回配置不正确。其中的appKey和appSecret是为微信自动给我们分配的密钥。 2.微信为了便于开发者测试,提供了微信公众平台测试账号,点击开发者中心-公众平台测试帐号-进入,和配置微信服务器配置一样,填写自己的服务器请求地址和Token,填写的URL需要正确响应微信发送的Token验证。

Alt text

获取access_token

access_token是公众号的全局唯一接口调用凭据,公众号调用各接口时都需使用access_token。开发者需要进行妥善保存。access_token的存储至少要保留512个字符空间。access_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效。 可以使用微信测试工具,获取对应的AccessToken。

Alt text

发布网站,验证Token

发布网站以后,浏览网站,如果看到url请求得到的结果如图所示,则证明站点可以正确响应微信服务器的响应。

Alt text 对应的项目中的Control为WeixinControl,

[HttpGet]
[ActionName("Index")]
public ActionResult Get(string signature, string timestamp, string nonce, string echostr)
{
    if (CheckSignature.Check(signature, timestamp, nonce, Token))
    {
        return Content(echostr); //返回随机字符串则表示验证通过
    }
    else
    {
        return Content("failed:" + signature + "," + Senparc.Weixin.MP.CheckSignature.GetSignature(timestamp, nonce, Token) + "。" +
            "如果你在浏览器中看到这句话,说明此地址可以被作为微信公众账号后台的Url,请注意保持Token一致。");
    }
}

源码地址

github:https://github.com/AkonCoder/WeixinDevelop.git

本章之说明了一些基础配置和校验,有兴趣可以clone下源码看下业务逻辑,后续会实现一些功能开发。例如获取周围的Free WIFi、各地区的天气预报、获取最新资讯等。大家可以一起学习交流,有错误之处,请大牛们指教!谢谢! 下面是目前个人的维护的微信公众号,会不定期分享一些有价值的学习交流文章。

Alt text

绑定 Evernote International 账号 绑定印象笔记账号 当前文档 恢复至上次同步状态 删除文档 导出... 预览文档 分享链接 系统 设置 下载桌面客户端 下载离线Chrome App 使用说明 快捷帮助 常见问题 关于

搜索文件 我的第一个笔记本 微信公众平台开发

© 著作权归作者所有

CoderPeng
粉丝 0
博文 140
码字总数 78649
作品 0
青浦
程序员
私信 提问

暂无文章

mars-config 动态配置管理

mars-config 码云地址:https://gitee.com/fashionbrot/mars-config 介绍 spring mvc 、springboot 动态配置系统。http 轮训方式 更新 动态配置 软件架构 软件架构说明 后端使用技术 :sprin...

fashionbrot
16分钟前
9
0
女朋友玩吃鸡手游被开挂老哥骗炮,我见义勇为将骗子绳之以法

大家好,我是乔哥。 晚上10点以后下班后我回到自如出租房里面,开始处理公众号粉丝发来的消息,一条一条处理,突然看到了这么几条消息,吸引了我的眼球: 然后我就和这位女粉丝小红(化名)聊...

gzc426
22分钟前
3
0
两款软件

fadetop保护眼睛软件 Snipaste截图软件

伟大源于勇敢的开始
48分钟前
6
0
06.全局锁和表锁

根据加锁的范围,MySQL里面的锁大致可以分成全局锁、表级锁和行锁三类。 全局锁 全局锁就是对整个数据库实例加锁。MySQL提供了一个加全局读锁的方法,命令是flush tables with read lock(FTW...

scgaopan
今天
7
0
图解安装CentOS8

最近正式发布了CentOS8!迫不及待地准备下载了CentOS8镜像,准备体验下,工作繁忙无暇理会。 今天抽空安装体验下~ 可从CentOS官网下载:https://centos.org/download/ 为了快速可以选择从国...

技术训练营
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部