点击查看代码
	// 授权并获取用户信息
const authorizeAndGetUserInfo = (loginRes) => {
uni.getUserInfo({
success(res) {
// 用户信息获取成功,处理登录业务逻辑
app.globalData.info = res.userInfo;
app.globalData.api.index.getList({
bodyData: {
m: 'Tiktok',
c: 'Public',
a: 'douyinLogin',
mchid: 1,
},
data: {
anonymous_code: loginRes.anonymousCode,
code: loginRes.code,
nickname: res.userInfo.nickName,
headimg: res.userInfo.avatarUrl,
sex: res.userInfo.gender
}
}).then(fan => {
app.globalData.token = fan.data.data.cookie
app.globalData.info.encid = fan.data.data.encid
uni.setStorageSync('info', app.globalData.info)
// 如果需要提示用户登录成功,可以取消以下代码的注释
// uni.showToast({
// title:'登录成功',
// icon:'success'
// })
// 假设这是一个响应式变量来控制登录显示
if (loginShow && loginShow.value !== undefined) {
loginShow.value = false;
}
})
},
fail(err) {
uni.showToast({
title: '未获取到您的信息,不能正常使用',
icon: 'none'
})
uni.openSetting({
success(res) {
if (res.authSetting && res.authSetting['scope.userInfo']) {
authorizeAndGetUserInfo(loginRes) // 用户开启权限后,重新调用授权并获取用户信息的函数
}
}
})
}
})
} const login = () => {
uni.getProvider({
service: 'oauth',
success: function(providerRes) {
uni.login({
provider: providerRes.provider[0],
success: function(loginRes) {
authorizeAndGetUserInfo(loginRes); // 使用抽离出来的函数来进行授权并获取用户信息
},
fail: function() {
uni.showToast({
title: '登录失败,请重试',
icon: 'none'
});
}
});
},
fail: function() {
uni.showToast({
title: '获取服务提供者失败,请重试',
icon: 'none'
});
}
});
}

uniapp登录板块封装(旧接口getUserInfo)的更多相关文章

  1. Java基础04 封装与接口

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 总结之前的内容,对象(object)指代某一事物,类(class)指代象的类型.对 ...

  2. Java基础04 封装与接口(转载)

    数据成员和方法都是同时开放给内部和外部的.在对象内部,我们利用this来调用对象的数据成员和方法.在对象外部,比如当我们在另一个类中调用对象的时,可以使用 对象.数据成员 和 对象.方法() 来调用对 ...

  3. java Vamei快速教程04 封装和接口

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 总结之前的内容,对象(object)指代某一事物,类(class)指代象的类型.对 ...

  4. QuantLib 金融计算——自己动手封装 Python 接口(1)

    目录 QuantLib 金融计算--自己动手封装 Python 接口(1) 概述 QuantLib 如何封装 Python 接口? 自己封装 Python 接口 封装 Array 和 Matrix 类 ...

  5. 使用php封装APP接口

    php封装APP接口 我们先来介绍Json的封装方法 json_encode函数传递中文的话,输出后是乱码的,针对这个问题我觉得有必要做一个解释: 其实json_encode对中文那不是乱码,只是js ...

  6. QuantLib 金融计算——自己动手封装 Python 接口(2)

    目录 QuantLib 金融计算--自己动手封装 Python 接口(2) 概述 如何封装一项复杂功能? 寻找最小功能集合的策略 实践 估计期限结构参数 修改官方接口文件 下一步的计划 QuantLi ...

  7. C++库封装JNI接口——实现java调用c++

    1. JNI原理概述 通常为了更加灵活高效地实现计算逻辑,我们一般使用C/C++实现,编译为动态库,并为其设置C接口和C++接口.用C++实现的一个库其实是一个或多个类的简单编译链接产物.然后暴露其实 ...

  8. uni-app 环境配置,uni.request封装,接口配置,全局配置,接口调用的封装

    1.环境配置 (可参考uni-官网的环境配置) common文件夹下新建config.js let url_config = "" if(process.env.NODE_ENV ...

  9. uniapp登录流程详解uni.login

    uni.login(OBJECT)登录 H5平台登陆注意事项: 微信内嵌浏览器运行H5版时,可通过js sdk实现微信登陆,需要引入一个单独的js,详见普通浏览器上实现微信登陆,并非开放API,需要向 ...

  10. 绕过cookies进行登录并封装请求方法

    之前写了一篇使用session跨请求保持会话的帖子,这次在它的基础上对请求方法简单封装一下,可以达到复用的效果 1.先定义登录方法 在登录方法中利用session跨请求保持会话,并返回session, ...

随机推荐

  1. 访问数据库 与 Java框架各层级

    目录 访问数据库流程 Java框架各层级 4 层 对象的调用流程 耦合性与分层 项目地址:https://github.com/aijisjtu/Bot-Battle 访问数据库流程 flowchar ...

  2. #状压dp,拓扑排序,内向基环树#CF1242C Sum Balance

    题目 有 \(k\) 个盒子, 第 \(i\) 个盒子有 \(n_i\) 个数. 保证所有数互不相同. 从每个盒子各拿出一个数, 并按照某种顺序放回去(每个盒子恰好放入一个数). 判断是否能使操作后所 ...

  3. #点分树#洛谷 6626 [省选联考 2020 B 卷] 消息传递

    题目 多组数据多组询问,对于一个点 \(x\) 和 树上的距离 \(k\),问 \(\sum_{i=1}^n[Dis(x,i)==k]\) 分析 卡了一页的常,发现两个 \(\log\) 过不去,有一 ...

  4. Centos环境部署SpringBoot项目

    centos JDK Jenkins maven tomcat git myslq nginx 7.9 11.0.19 2.418 3.8.1 9.0.78 2.34.4 5.7.26 1.24.0 ...

  5. openEuler20.03操作系统上安装部署MogDB2.1.1

    openEuler20.03 操作系统上安装部署 MogDB2.1.1 本文出处:https://www.modb.pro/db/378319 openEuler 操作系统上安装 mogdb: 下载 ...

  6. Prometheus 性能调优-水平分片

    简介 之前笔者有连续 2 篇文章: Prometheus 性能调优 - 什么是高基数问题以及如何解决? 如何精简 Prometheus 的指标和存储占用 陆续介绍了一些 Prometheus 的性能调 ...

  7. 【#HDC2022】HarmonyOS体验官活动正式开启,赶快投稿赢限量奖品吧!

      1. [活动简介] HDC 2022 于11月4日线上线下正式开启.历时一年,在无数开发者的共同努力下,我们汇聚了HarmonyOS生态的新成果.新体验.新开放能力,邀你参与到HarmonyOS的 ...

  8. 解密prompt系列27. LLM对齐经验之如何降低通用能力损失

    前面我们已经聊过众多指令微调的方案,这一章我们重点讨论下如何注入某一类任务或能力的同时,尽可能不损失模型原有的通用指令理解能力.因为在下游或垂直领域应用中,我们设计的推理任务风格或形式,往往很难通过p ...

  9. linux 性能自我学习 ———— 理解平均负载 [一]

    前言 linux 系统上性能调查的自我学习. 正文 什么是平均负载? 使用uptime: 可以看到后面有: 0.03, 0.06, 0.09 这个表示1分钟,5分钟,15分钟的平均负载. 平均负债是指 ...

  10. spring boot 学习前提

    前言 总结spring boot的学习前提. 正文 1.spring 程度(可以基本使用,我在学习spring boot的时候,感觉到需要一些spring的基础) 2.maven (这个是包管理,一定 ...