短视频拓客,网站推广,关键词推广
您当前的位置 : 首 页 > 新闻中心 > 公司动态

万词霸屏微信公众号开发入门

2020-09-27 11:16:43

现如今,微信已经不再只承担着交流沟通、娱乐大众的功能,微信公众号的推出将微信逐渐转变成个人、商家、企业单位用来营销的重要工具。而微信推出的公众号开发功能,为我们码农带来很大的方便,让我们创造出更多的可能性。万词霸屏

今天,就结合自己的些许经验,跟大家分享下有关公众号开发的操作。而对于大部分的开发者来说可能已经很熟悉微信公众号开发,所以这篇入门篇适用于初始了解和做公众号开发的同学。

Tips:本文根据微信官方文档的内容编写,并会附上实例代码(nodejs)。

万词霸屏

第①章:开始开发(准备阶段)

1. 接入指南

接入微信公众平台开发,开发者需要按照如下步骤完成:

·填写服务器配置

万词霸屏

说明:URL是开发者用来接收微信消息和事件的接口URL,该接口尽量写成两个请求方式,1:get请求,用于验证如下地址有效性,2:post请求, 用于接收消息和事件,Token 可以随便定义用于验证接口签名有效性, EncodingAESKey是加密的密钥,下面加密方式选兼容模式或者安全模式的时候开发者可根据该密钥对数据进行加解密。

·验证如上URL服务器地址的有效性

根据官方文档的说明,微信验证接口会带下面几个参数

服务端接口接收到这些参数后进行签名验证,如下代码:

exports.check = function (req, res, next) {

// 在这里验证签名

var signature = req.query['signature'],

timestamp = req.query['timestamp'],

nonce = req.query['nonce'],

echostr = req.query['echostr'];

var sha1 = crypto.createHash('sha1'),

sha1Str = sha1.update([config.weixin.token, timestamp, nonce].sort().join('')).digest('hex');

res.writeHead(200, {'Content-Type': 'text/plain'});

res.end((sha1Str === signature) ? echostr : '');

return res;

};

·依据接口文档实现业务逻辑

这里就是根据业务需求,进行接口调用的编程了,下面我会一一介绍

2. 获取access_token

access_token是公众号的全局唯①接口调用凭据,公众号调用各接口时都需使用access_token。该接口一天只能请求2000次,开发者需要进行妥善保存。access_token的存储至少要保留512个字符空间。access_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效。

如下代码事例:

exports.get_token = function (fn) {

redis.get(weixin_token, function (err, token_str) {

if (token_str) {

return fn(err, JSON.parse(token_str));

} else {

request.get("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" + app_id + "&secret=" + app_secret, function (err, response, body) {

if (JSON.parse(body).errcode == 45009) {

return fn(err)

} else {

redis.set(weixin_token, body, function (err) {

redis.expire(weixin_token, 7000, function () {

return fn(err, JSON.parse(body));

};

上面的事例代码中,首先我会从redis中获取到access_token,因为我最初获取access_token的时候写入到redis中了,官方给的有效时间是7200秒,我放在redis中的有效时间是7000秒,所以我这里的token不会过期,过期后会重新调用接口获取并写入redis


最近浏览:

Pay attention to us

微信图片_20200317111253.png

未标题-3.png咨询服务热线:18608119775

立即咨询