微信小程序中常见的几种授权: 代码下载地址:https://download.csdn.net/download/weixin_39152200/12569931 压缩包中包含两个文件:authorize.js和md5.js 使用方法: 将这两个文件放到utils目录中,在需要使用的页面js文件中引入
let authorize = require('../../utils/authorize.js');授权方法调用: 1、登录 + 获取openID 在authorize.js的login方法中,修改获取openID的接口地址 然后在页面中调用:
authorize.login().then(res => { // 调用成功 console.log(res) }).catch(res => { // 调用失败 })2、获取用户信息
authorize.getUserInfo().then(res => { // 调用成功 console.log(res) if (res) { // 获取用户信息成功 } else { // 用户未授权 } }).catch(res => { // 调用失败 })authorize.js中的方法只能在用户已经授权的情况下获取用户信息,如果用户没有授权,需要引导用户点击授权按钮,见文档:https://developers.weixin.qq.com/community/develop/doc/0000a26e1aca6012e896a517556c01 具体方法以后会单独出一期
3、获取用户授权信息 获取用户授权信息,若未授权会调起授权弹框(获取用户信息的时候除外),可以选择是否必须授权才能进行下一步,接下来以获取地理位置为例
authorize.getAuthSetting('scope.userLocation', true, '地理位置信息').then(res => { console.log(res) // res为true则表示已经授权,false表示未授权 }).catch(res => { // 调用失败 })getAuthSetting方法有三个参数:
第一个参数代表需要授权的权限字段名,具体值见微信官方文档中scoped列表 第二个参数代表是否必须授权才能进行下一步,为true则必须,false为非必须第三个参数代表权限的描述,用于弹框提示中的显示4、获取用户地理位置 这里获取地理位置使用的是签名算法,需要去腾讯地图开放平台中申请key并进行配置 首先在authorize.js中填写腾讯地图的key和签名 然后在页面中调用
authorize.getLocation().then(res => { console.log(res) }).catch(res => { // 调用失败 console.log(res) })