# 开发者注意了！小程序获取「用户数据」方式更新，快去升级吧

- 作者：Astrian
- 发布时间：2017-07-27 19:00
- 原文：https://www.ifanr.com/minapp/880357

![](https://s3.ifanr.com/wp-content/uploads/2017/07/redian2-4.jpg)

许多小程序在第一次打开时，都会弹出一个窗口，让你授权用户数据。

![](https://s3.ifanr.com/wp-content/uploads/2017/07/minapp-require-authentication-modal.jpg)

对此，很多用户都表示不爽——这是「查户口」吗？

可喜的是，微信在昨天（7 月 26 日）晚上的小程序更新中，**终于对小程序「查户口」的行为说不了。**此外，还升级了小程序获取 UnionID 的方式，**大大提升了小程序的用户体验。**

接下来，**知晓程序（微信号 zxcx0101）就来为大家解析这两个有关获取用户信息的接口更新。**

### 用户信息获取方式升级

**现在，小程序获取用户信息，是通过直接调用接口的方式进行的。**当小程序调用接口时，微信会询问用户是否同意授权，同意后，小程序就可以获取用户的信息。

这种获取用户信息的方式，本身没什么问题。**但许多小程序，都不约而同地选择在用户刚启动小程序的时候，就立刻要求获取用户信息。**

这样做，会让用户觉得奇怪，甚至产生警惕的心理，进而选择拒绝授权自己的个人信息。

**如果小程序没有相应机制应对，会极大地影响用户体验**。

在新的用户信息获取机制之下，小程序将**不再使用传统的接口调用方式**，主动向用户请求个人资料；**取而代之的是按钮触发方式**，变成用户需要使用微信登录时，小程序再被动获取相应信息。

那么，开发者在开发新版本小程序时，是否需要对低版本做额外的兼容操作呢？

微信官方在公告下作出的答复是这样的：开发者可以直接使用新的方法要求授权、获取用户数据，旧版微信会自动保持原有授权方式，**无需额外的兼容操作**。

这下，一进小程序就被弹窗要求授权的恼人情况，终于可以有所缓解了。

**开发者也需要尽快更新自己的小程序，改为使用新方式获取用户数据**，以免出现用户升级微信后，无法正常使用小程序的情况。

### 自动获取用户 UnionID

在此次更新中，**与 app、公众号关联的同一小程序获取 UnionID 的方式也获得升级**。

官方对这个能力的解释如下：

> 同一个微信开放平台下相同主体的 app、公众号、小程序，如果用户已经关注公众号，或者曾经在 app 或公众号进行过微信登录授权，则用户打开小程序时，开发者可以直接获取到该用户 UnionID，无须用户再次授权。

例如，一个电商公众号在自己的公众号上有了一个 HTML 5 商城，当他们推出相应小程序的时候，原先使用微信登录过 HTML 5 商城的用户，小程序可以直接利用接口，获取用户数据。

也就是说，**当用户使用微信登录过 app，或者关注过公众号，就可以在小程序里无缝登录，免去二次询问。**开发者可以更好地将用户引导至小程序。

**知晓程序（微信号 zxcx0101）认为，这次更新是小程序针对用户体验的重要改进。**

你在使用小程序的时候最想吐槽什么呢？欢迎留言与我们讨论。

**关注「知晓程序」公众号，在微信后台回复「新能力」，获取小程序新能力全解读。**

![zxcx&#95;0208](https://s3.ifanr.com/wp-content/uploads/2017/02/zxcx_0208.png)
