当前位置:   article > 正文

uni-app开发微信公众号扫码功能(2)-微信token缓存_微信公众号开发,获取token每天有上限麻

微信公众号开发,获取token每天有上限麻

需求:由于微信token有上限每天2000次,这里使用云函数和云数据库相结合,实现token和jsapi_ticket的的缓存。

新手写代码,请观众忽略代码风格和格式哈,基本功能实现了,若有不完善的地方请自行补充。

基本原理:

1. 从缓存云数据库中读取token

2. 如果token无效(提前10秒失效,防止时间差导致的无效),则重新获取token和ticket

3. 如果token有效,则优先从缓存获取ticket,并判断ticket是否有效

4. 如果ticket无效,则重新获取ticket

实现过程:

1. 建立云数据库

在database上点右键,新建DB Schema,命令为db-wxcache

 新建的json中填写内容(数据库结构及读写权限):

  1. // 文档教程: https://uniapp.dcloud.net.cn/uniCloud/schema
  2. {
  3. "bsonType": "object",
  4. "required": [],
  5. "permission": {
  6. "read": true,
  7. "create": true,
  8. "update": true,
  9. "delete": true
  10. },
  11. "properties": {
  12. "_id": {
  13. "description": "ID,系统自动生成",
  14. },
  15. "key": {
  16. "bsonType": "string",
  17. "label": "缓存键名",
  18. "errorMessage": {
  19. "format": "{label}不正确"
  20. },
  21. "trim": "both"
  22. },
  23. "value": {
  24. "bsonType": "string",
  25. "label": "缓存数据",
  26. "errorMessage": {
  27. "format": "{label}不正确"
  28. },
  29. "trim": "both"
  30. },
  31. "expired": {
  32. "bsonType": "int",
  33. "label": "过期时间(毫秒)",
  34. "errorMessage": {
  35. "format": "{label}不正确"
  36. },
  37. "exclusiveMinimum": true,
  38. "exclusiveMaximum": true,
  39. "defaultValue": "-1"
  40. }
  41. }
  42. }

2. 建立获取签名的云函数

cloudfunctions目录上点右键,新建云函数,命令为wx-signature

3. 下载微信JS-

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/243092
推荐阅读
相关标签
  

闽ICP备14008679号