全部
常见问题
产品动态
精选推荐

wx.getUserProfile too frequently 问题

管理 管理 编辑 删除

接口调用频率规范

概念介绍

小程序wx接口可分为“普通接口”和“限频接口”。

“限频接口”指的是一个用户在一段时间内不允许频繁调用的wx接口,此类接口一般会调用到微信后台系统资源,为了保护系统,同时防止用户资源被滥用,开发者需要对此类接口做适度的频率限制,不能无节制地调用。

平台会对小程序内“限频接口”的调用情况做监控,如果小程序对此类接口的调用频率超出平台的规范,将会收到站内信提醒。系统会在资源紧张的情况下优先保障合理使用的小程序的服务。

开发者可登录小程序管理后台-开发管理-接口设置中查看“限频接口”调用情况。

目前,“限频接口”包括以下接口:

  1. wx.login
  2. wx.checkSession
  3. wx.getSetting
  4. wx.getUserInfo
  5. wx.getUserProfile

频率规范


API规范其他说明
wx.login一天的调用总次数不多于该小程序pv的两倍,单用户一秒钟不能大于4次-
wx.checkSession一天的调用总次数不多于该小程序pv的两倍,单用户一秒钟不能大于4次-
wx.getSetting一天的调用总次数不多于该小程序pv的两倍,单用户一秒钟不能大于4次-
wx.getUserInfo一天的调用总次数不多于该小程序pv的两倍,单用户一秒钟不能大于4次-
wx.getUserProfile一天的调用总次数不多于该小程序pv的两倍,单用户一秒钟不能大于4次-

Tips: 微信后台会延迟一天统计上一天的小程序pv总数和api调用总数,超过规范总数的会提醒尽快调整。

优化方法

开发者可以参考以下方法对“限频接口”的调用频率做优化:

  • 把上一次调用接口的返回结果缓存下来以供后续逻辑复用,而不是重新调用接口
  • 避免在定时循环的逻辑内重复调用“限频接口”
  • 避免在页面初始化事件onLoadonShowonReady中调用限频接口,应该在小程序初始化事件onLaunch中调用

以下是错误用法和正确用法示例:

  • wx.getSetting 错误用法:
setInterval(() => {
  wx.getSetting()
}, 5000)
  • wx.getSetting 正确用法:
let setting
wx.getSetting({
  success(res) {
    setting = res
  }
})

// 在需要获取地理位置时
if (setting.authSetting['scope.userLocation']) {
  wx.getLocation({
    success(res) {},
    fail(res) {
      if (res.errMsg.indexOf('auth deny') >= 0) {
        // 如果权限没有开,引导用户打开设置页开启地理位置授权
      }
    }
  })
}
  • wx.getUserInfo 错误用法:
Page({
  onShow() {
    wx.getUserInfo()
  }
})
  • wx.getUserInfo 正确用法:
App({
  onLaunch() {
    wx.getUserInfo()
  }
})

需要在小程序后台开发管理-接口设置里面全部开通就好了

699b1202307121551375225.png

请登录后查看

CRMEB-慕白寒窗雪 最后编辑于2023-07-12 15:52:11

快捷回复
回复({{post_count}}) {{!is_user ? '我的回复' :'全部回复'}}
排序 默认正序 回复倒序 点赞倒序

{{item.user_info.nickname ? item.user_info.nickname : item.user_name}}

作者 管理员 企业

{{item.floor}}# 同步到gitee 已同步到gitee {{item.is_suggest==1? '取消推荐': '推荐'}}
沙发 板凳 地板 {{item.floor}}#
{{item.user_info.title}}
附件

{{itemf.name}}

{{item.created_at}}  {{item.ip_address}}
{{item.like_count}}
{{item.showReply ? '取消回复' : '回复'}}
删除
回复
回复

{{itemc.user_info.nickname}}

{{itemc.user_name}}

作者 管理员 企业

回复 {{itemc.comment_user_info.nickname}}

附件

{{itemf.name}}

{{itemc.created_at}}   {{itemc.ip_address}}
{{itemc.like_count}}
{{itemc.showReply ? '取消回复' : '回复'}}
删除
回复
回复
查看更多
回复
回复
3135
{{like_count}}
{{collect_count}}
添加回复 ({{post_count}})

相关推荐

快速安全登录

使用微信扫码登录
{{item.label}} {{item.label}} {{item.label}} 板块推荐 常见问题 产品动态 精选推荐 首页头条 首页动态 首页推荐
加精
取 消 确 定
回复
回复
问题:
问题自动获取的帖子内容,不准确时需要手动修改. [获取答案]
答案:
提交
bug 需求 取 消 确 定

微信登录/注册

切换手机号登录

{{ bind_phone ? '绑定手机' : '手机登录'}}

{{codeText}}
切换微信登录/注册
暂不绑定
CRMEB客服

CRMEB咨询热线 咨询热线

400-8888-794

微信扫码咨询

CRMEB开源商城下载 源码下载 CRMEB帮助文档 帮助文档
返回顶部 返回顶部
CRMEB客服