微信小程序 用户权限部分
生活随笔
收集整理的這篇文章主要介紹了
微信小程序 用户权限部分
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、獲取用戶授權設置:wx.getSetting( )
| success | function | 否 | 接口調用成功回調函數 |
| fail | function | 否 | 接口調用失敗的回調函數 |
| complete | function | 否 | 接口調用結束的回調函數(調用成功、失敗都會執行) |
success 回調函數
| authSetting | authSetting | 用戶授權結果 |
| 用戶信息 | scope.userInfo |
| 地理位置 | scope.userLocation |
2、查看小程序是否有獲取用戶信息的權限
獲取用戶信息
wx.getUserInfo({//箭頭調用法success: (data) => {console.log(data);console.log(data.rawData);console.log(data.signature);console.log(data.encryptedData);console.log(data.iv);console.log(data.errMsg);console.log(data.cloudID);// app.globalData.userInfo = data.userInfo //全局變量賦值// app.globalData.haveauth = true} })3、獲取用戶地理位置
wx.getSetting({success(res) {if (!res.authSetting['scope.userLocation']) {wx.authorize({scope: 'scope.userLocation',success() {//授權后的業務邏輯}})}} })app.json中添加如下字段
"permission": {"scope.userLocation": {"desc": "你的位置信息將用于小程序位置接口的效果展示"} },4、獲取用戶code
wx.login({success: res => {// 獲取到用戶的 code 之后:res.codeconsole.log("用戶的code:" + res.code);} });5、利用云函數獲取用戶openid
前端js文件
wx.cloud.callFunction({name: 'login',data: {},success: res => {// console.log('[云函數] [login] user openid: ', res.result.openid)var openid = res.result.openidconsole.log(openid)}, })云函數index.js
const cloud = require('wx-server-sdk')// 初始化 cloud cloud.init()exports.main = (event, context) => {console.log(event)console.log(context)// 獲取 WX Context (微信調用上下文),包括 OPENID、APPID、及 UNIONID(需滿足 UNIONID 獲取條件)const wxContext = cloud.getWXContext()return {event,openid: wxContext.OPENID,appid: wxContext.APPID,unionid: wxContext.UNIONID,} }6、獲取用戶信息
// 獲取用戶信息 wx.getSetting({success: res => {if (res.authSetting['scope.userInfo']) {// 已經授權,可以直接調用 getUserInfo 獲取頭像昵稱,不會彈框wx.getUserInfo({success: res => {this.setData({avatarUrl: res.userInfo.avatarUrl,userInfo: res.userInfo})}})}} })8、直接獲取用戶頭像
<view><view class="logo"><open-data type="userAvatarUrl" class="userinfo" id="userinfo"></open-data></view> </view>總結
以上是生活随笔為你收集整理的微信小程序 用户权限部分的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux安装 java jdk
- 下一篇: 2.1算法分析 递归---阶乘