zoukankan      html  css  js  c++  java
  • 小程序授权

    //wxml
    <view wx:if="{{isHide}}">
        <view wx:if="{{canIUse}}" >
            <view class='header'>
                <image src='/images/1.png'></image>
            </view>
            <view class='content'>
                <view>申请获取以下权限</view>
                <text>获得你的公开信息(昵称,头像等)</text>
            </view>
    
            <button class='bottom' type='primary' open-type="getUserInfo" lang="zh_CN" bindgetuserinfo="bindGetUserInfo">
                授权登录
            </button>
        </view>
        <view wx:else>请升级微信版本</view>
    </view>
    //js
    const util = require('../../utils/util.js')
    const app = getApp()
    Page({
      data: {
        //判断小程序的API,回调,参数,组件等是否在当前版本可用。
        canIUse: wx.canIUse('button.open-type.getUserInfo'),
        isHide: true,
      },
    
      onLoad: function () {
       
      },
    
      bindGetUserInfo: function (e) {
        var that = this
        console.log(e)
        if (e.detail.errMsg == 'getUserInfo:ok') {
          //检查登录是否过期
          if (e.detail.userInfo) {
            //用户按了允许授权按钮
            var that = this;
            //授权成功后,通过改变 isHide 的值,让实现页面显示出来,把授权页面隐藏起来
            wx.getUserInfo({
              success: function (res) {
                wx.login({
                  success: res => {
                    // 获取到用户的 code 之后:res.code
                    wx.request({
                      // 自行补上自己的 APPID 和 SECRET
                      url: app.globalData.url + "/key",
                      method: 'GET',
                      data: {
                        js_code: res.code
                      },
                      success: res => {
                        // 获取到用户的 openid
                        wx.setStorage({
                          key: "sessionKey",
                          data: res.data
                        })
                        //跳转页面
                        wx.navigateBack({
                          // url: '../index/index'
                        })
                      }
                    })
                  }
                });
              }
            });
          } else {
            //用户按了拒绝按钮
            wx.showModal({
              title: '警告',
              content: '您点击了拒绝授权,将无法进入小程序,请授权之后再进入!!!',
              showCancel: false,
              confirmText: '返回授权',
              success: function (res) {
                // 用户没有授权成功,不需要改变 isHide 的值
                if (res.confirm) {
                  console.log('用户点击了“返回授权”');
                }
              }
            });
          }
        }
      }
    })
  • 相关阅读:
    sql中内连接和外连接的区别
    javascript优化--08模式(代码复用)01
    javascript优化--07模式(对象)02
    javascript优化--06模式(对象)01
    HTML-Audio/Video
    javascript优化--05模式(函数)
    javascript优化--04高质量编码
    javascript优化--03高质量编码
    javascript优化--02高质量编码
    Unicode编码
  • 原文地址:https://www.cnblogs.com/minghan/p/13273152.html
Copyright © 2011-2022 走看看