前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >微震,你感受到了么?

微震,你感受到了么?

作者头像
花叔
修改2019-08-07 17:05:42
7860
修改2019-08-07 17:05:42
举报
文章被收录于专栏:花叔的专栏花叔的专栏

当你看到这篇文章时,证明这是公众号平台自动推送的。

别误会,我说的微震,是指微信的小震荡。

什么意思?

先说说大家能感受到的,微信最近搞了3个事情:

  1. 群发文章可以定时发送了
  2. 原创文章作者广告收入分成比例将大幅提高
  3. 微信在android侧发布了一个6.5.10的内测版,具体点这里

这3个比较美好的变动很好理解,花叔就不分析了,花叔今天说说一个不大美好的、但大家又没感知到的事情,因为它给小程序生态带来了一丢丢震荡。

事情是这样的,喜欢研究小程序的同学昨晚应该能感受到,不少小程序好像出问题,例如Nodes 昨晚有一段时间一直在提示“服务器失联”:

菜头叔的公众号也发布了小程序故障声明,他家做的“姨妈日历”、“群里有事”两个小程序相继出现授权错误,导致没法正常使用:

迫于无奈,花叔被迫要去寻找问题所在,经过排查,究其原因是:小程序官方获取鉴权用的session_key的接口,在返回数据时去掉了expire_in参数。

这样会有什么影响呢?

我拿腾讯云的初期小程序解决方案来举例,在配置好小程序后端代码后,你会发现会话服务器上

/opt/lampp/htdocs/mina_auth/application/controllers/qcloud/minaauth/Auth.php

这个文件的代码里,在获取session_key后,会做一个expire_in返回值是否存在的判断

如果不存在的话,那么就会认为授权错误。

于是,早期应用腾讯云小程序解决方案的小程序,基本上应该都会挂掉。

好吧,那怎么办,花叔提供一个简单的解决方案,如下,把这个代码改造一下就好(被注释的是老代码):

一些不依靠腾讯云解决方案的小程序,只要没有根据这个expire_in返回值来判断的话,应该不会出现类似问题,花叔的团队之前做的“王者荣耀赛事”小程序就很硬朗,成功躲开了这歌问题。

当然,这里要说明一下,这个锅不应该腾讯云背,应该背锅的是微信官方,这次接口迭代的操作略显呵呵呵。

最后,再提醒一下各位开发者,据我所知,除了这个获取session_key的接口改动外,还有另一个小东西也改动了,就是授权后获取回来的用户头像链接由原来的http协议换成https协议了。

这也是个小坑,昨天 Nodes 在生成朋友圈分享图的时候,就突然读不出用户头像,最后是这么解决的:

这样的话,就算微信侧再换回来http协议头,也是正常的了。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-06-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 MinProgram 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档