首页 > 编程语言 >微信小程序手机号登录

微信小程序手机号登录

时间:2024-11-18 11:40:41浏览次数:1  
标签:openid code console 手机号 登录 微信 res log

import { wxPhoneLogin, getPhoneNumber } from '../login'
// 后端接口
// 服务端接口 - 获取openid
function queryOpenIdFn(code) {
  return new Promise((resolve) => {
    wxPhoneLogin({
      code,
    })
      .then((res: any) => {
        if (res.code == 0) {
          console.log('获取openid失败1', res.msg)
          return
        }
        uni.setStorageSync('openId', res.data.openid)
        resolve(res.data)
      })
      .catch((err) => {
        console.log('获取openid失败2', err)
      })
  })
}

// 服务端接口 - 获取手机号
function getPhoneNumberFn(phoneCode, openId) {
  return new Promise((resolve) => {
    getPhoneNumber({
      code: phoneCode,
      openId,
    })
      .then((res) => {
        if (res.code == 0) {
          console.log('获取手机号失败1:', res.msg)
          return
        }
        resolve(res)
      })
      .catch((err) => {
        console.log('获取手机号失败2:', err)
      })
  })
}

// 微信api : 微信登录
function loginFn() {
  return new Promise((resolve, reject) => {
    uni.login({
      success: async (res) => {
        queryOpenIdFn(res.code).then((res) => {
          resolve(res)
        })
      },
      fail: (err) => {
        console.log('login fail:', err)
      },
    })
  })
}

export { loginFn, getPhoneNumberFn }

界面调用

 loginFn().then((res: any) => {
    // 微信登录&服务端获取openid
    console.log(res, '接口换取的openid')
    console.log('获取手机号的动态令牌:', e.detail.code) // 动态令牌
    getPhoneNumberFn(e.detail.code, res.openid).then((res2: any) => {
      // 服务端获取手机号
      console.log(555, res2)
      if (res2.code == 1) {
        userStore.setUserInfs(res2.data?.userinfo)
        uni.setStorageSync('token', res2.data.userinfo.token)
        gonswi('/pages/index/index')
      }
    })

})
 

 

新建 login.ts

标签:openid,code,console,手机号,登录,微信,res,log
From: https://www.cnblogs.com/7788mmhh/p/18552267

相关文章

  • 基于微信小程序的学生活动管理系统设计与实现
    目录一、项目背景二、系统架构图三、效果图展示四、主要代码五、获取源码一、项目背景由于APP软件在开发以及运营上面所需成本较高,而用户手机需要安装各种APP软件,因此占用用户过多的手机存储空间,导致用户手机运行缓慢,体验度比较差,进而导致用户会卸载非必要的APP,倒逼管......
  • 一款基于 Java 开发的微信数据分析工具!
    大家好,我是Java陈序员。今天,给大家介绍一款基于Java开发的微信数据分析工具!关注微信公众号:【Java陈序员】,获取开源项目分享、AI副业分享、超200本经典计算机电子书籍等。项目介绍wx-dump-4j——一款基于Java开发的微信数据分析工具。它准确显示好友数、群聊数和当日......
  • 【微信小程序毕业设计】鲜花销售小程序的设计与实现
    概述:某211院校在校计算机导师,让我成为您的校外毕业指导老师。为您的毕业之旅保驾护航,专业为大家做好毕业选题,课外辅导等工作。文章末尾处有资料的获取方式。点击获取即可。技术描述:后端实现-使用node.js作为开发语言,koa2作为接口开发框架数据库-mysql管理端-vue2.0编写管......
  • 【微信小程序毕业设计】基于Uniapp家教小程序的设计与实现
    概述:某211院校在校计算机导师,让我成为您的校外毕业指导老师。为您的毕业之旅保驾护航,专业为大家做好毕业选题,课外辅导等工作。文章末尾处有资料的获取方式。点击获取即可。技术描述:后端实现-使用node.js作为开发语言,koa2作为接口开发框架数据库-mysql管理端-vue2.0编写管......
  • Jav项目实战II基于微信小程序的助农扶贫的设计与实现(开发文档+数据库+源码)
    目录一、前言二、技术介绍三、系统实现四、文档参考五、核心代码六、源码获取全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末一、前言在当前社会,助农扶贫已成为国家和社会各界......
  • Java项目实战II基于微信小程序的电子商城购物平台(开发文档+数据库+源码)
    目录一、前言二、技术介绍三、系统实现四、文档参考五、核心代码六、源码获取全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末一、前言随着互联网技术的飞速发展,电子商务已成为......
  • node.js毕设校园顺风车微信小程序(程序+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容一、选题背景关于校园交通出行问题的研究,现有研究主要以校园公共交通优化为主,专门针对校园顺风车这种特定出行方式的研究较少。在校园内,学生的出行需求多样化且具有......
  • Linux隐藏登录和清除历史命令以及其他相关安全操作示例
    隐藏登录ssh -T [email protected] /bin/bash -i 命令拆解-T:告诉ssh客户端,不要分配一个TTY(伪终端)root:连接用户xxx.xxx.xxx.xxx:连接的服务器ip地址/bin/bash:在远程服务器上启动一个交互式的Bashshell。效果如下,默认登录一个终端的时候,会有一个pts/0,但是这里已经......
  • 基于微信小程序的学生在线投票系统小程序app项目(源码+lw+部署文档+讲解等)
    项目整体介绍基于微信小程序的学生在线投票系统小程序为校园投票活动提供了便捷的解决方案。它具有简洁易用的界面,方便学生快速上手。活动组织者可以轻松创建投票项目,设定投票主题、选项、投票规则,如是否允许多选、投票起止时间等。在投票过程中,系统能实时统计票数,通过直......
  • C#UI自动化实现微信自动搜索聊天文件并发送
    用到了两个程序包,FlaUI .Core,FlaUI.UIA3,在VS的扩展里可以下载安装这两个程序包,UI自动化是用来实现自动测试程序流程的,减少人工测试的成本。有需要源程序的私信我。获取微信窗口句柄 voidGetWxHandle(){varprocess=Process.GetProcessesByNam......