小程序测试没问题,发到线上竟然崩了,原因竟然是后端的锅

162 阅读2分钟

公司的小程序昨天凌晨上线的,熬夜发版,大约凌晨4点多的时候发好并测试没问题,于是就回去睡觉了。

等我醒来已经早上11点多了,打开手机显示有5个未接电话,顿时觉得大事不妙,打开钉钉一看,果然群里已经炸开了,说是小程序登录不上。

我赶紧起床随便洗漱一下去公司,去点了登录确实报错了。但是报错信息都是null,后端的错误也没有正确的抛出。 㐊我赶紧去找后端老哥,看到他在看代码,我就问他看啥代码啊,赶紧看一下微信小程序api报错代码。明明之前都已经测好了登录,突然间不能登,肯定不是代码有问题啊,于是我让后端捕获了一下错误,然后发现微信的获取assets_token报了一个错误,错误码是45009,查了一下是这个接口有调用限制,一天只能调2000次,由于我们的小程序量还是挺大的,2000次很快就给干没了。那肯定崩了啊。

赶紧让后端改一下,acess_token是有7200秒的有效时间的,后端那边可以缓存起来的,快要过期或者发现过期了再去重新请求即可,而不是每次登录都要调这个接口,这种算一下理想状态一天24小时只需要12个asscess_token,是肯定够了的。还有一个稳定版获取acess_token的接口,每天限制调用50万次,对于一般量不大的小程序肯定是够了的。

当然了,这个问题我也仔细去看了一下微信小程序文档限次数的api,发现不仅后端的api接口有次数限制,前端的也有限制的,前端接口次数限制

问题算是解决了,有惊无险。