koa框架生成微信公众号二维码
时间:2022-07-22
本文章向大家介绍koa框架生成微信公众号二维码,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
demo的github地址:https://github.com/xuedingmiaojun/koa-demo.git
获取微信全局access_token
tip:需要在公众号管理后台预配置一下IP白名单 获取token
// 获取全局token
router.get('/token', async (ctx, next) => {
try {
let appid = 'wx36963a5a84d5ca4d'
let secret = '98431bcb5cac6b46ef132b6f544a11dd'
let opts = {
url: 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=' + appid + '&secret=' + secret
}
let res = await rp(opts)
res = JSON.parse(res)
let token = res.access_token
ctx.data = { token: token }
} catch (e) {
console.log(e)
}
await next()
})
获取ticket
创建临时二维码ticket
router.get('/qrcode', async (ctx, next) => {
let token = ctx.req.token
let opts = {
method: 'post',
form: '{"expire_seconds": 604800, "action_name": "QR_STR_SCENE", "action_info": {"scene": {"scene_str": 123 }}}',
uri: 'https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token=' + token
}
let res = await rp(opts)
console.log(res)
ctx.data = res
await next()
})
换取二维码
通过ticket换取二维码
https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=your ticket
参考资料
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- MySQL 数据恢复
- 【从0到1学习边缘容器系列2】之 边缘应用管理
- 【从0到1学习边缘容器系列-3】应用容灾之边缘自治
- Hacking with iOS: SwiftUI Edition - 里程碑:项目 13 - 15
- HDU 1896 优先队列用法
- 蓝桥杯省内模拟赛C++
- C++ STL (标准模板库) 详细内容讲解
- 蓝桥杯 试题 基础练习 分解质因数
- 蓝桥杯 试题 基础练习 FJ的字符串
- 蓝桥杯 试题 基础练习 龟兔赛跑预测
- 问题 1432: [蓝桥杯][2013年第四届真题]剪格子
- 问题 1426: [蓝桥杯][历届试题]九宫重排
- mock测试及jacoco覆盖率
- HDU 1495 非常可乐 最简单的的解决方案
- Performing Push Install adb: error: failed to get feature set: more than one 解决方案