uni-app 获取用户的openID和基本信息


一、获取用户的openId

1、前提条件:找到小程序的id和密钥

在微信公众平台,https://mp.weixin.qq.com/,找到小程序的id和密钥
在这里插入图片描述

2、代码展示

(1)uni.login:获取用户的登录凭证。

https://uniapp.dcloud.io/api/plugins/login?id=login

(2)uni.request:发送网络请求,通过登录凭证获取用户的openID。

https://uniapp.dcloud.io/api/request/request?id=request

(3)请求接口说明

https://developers.weixin.qq.com/doc/oplatform/Third-party_Platforms/2.0/api/others/WeChat_login.html#%E8%AF%B7%E6%B1%82%E5%9C%B0%E5%9D%80

注:只需要替换掉小程序的id和密钥,其它参数无需更改

uni.login({
        provider: "weixin",
        success: function (res) {
          let appid = "小程序id";
          let secret = "小程序密钥";
          let url =
            "https://api.weixin.qq.com/sns/jscode2session?appid=" +
            appid +
            "&secret=" +
            secret +
            "&js_code=" +
            res.code +
            "&grant_type=authorization_code";
          uni.request({
            url: url, // 请求路径
            success: (r) => {
              console.log("r", r);
              console.info("用户的openId", r.data.openid);
            },
          });
        },
      });

3、结果

在这里插入图片描述

二、获取用户的基本信息

1、API说明

uni.getUserProfile:获取用户信息。每次请求都会弹出授权窗口,用户同意后返回 userInfo。

https://uniapp.dcloud.io/api/plugins/login?id=getuserprofile

2、代码展示

uni.getUserProfile({
        desc: "获取你的昵称、头像信息",//必填项,声明获取用户个人信息后的用途,不超过30个字符
        success: (res) => {
          const userInfo = res.userInfo;
          console.log("用户基本信息", userInfo);
        },
        fail: (res) => {
          //拒绝授权
          wx.showToast({
            title: "获取失败",
            icon: "error",
            duration: 2000,
          });
          return;
        },
      });

2、结果

在这里插入图片描述

在这里插入图片描述

根据提供的引用内容,uni-app是一个使用Vue.js开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、Web以及各种小程序等多个平台\[3\]。在uni-app中,可以通过调用uni.login()获取登录用户的code,然后将code作为参数传递给后端接口,以获取SessionKey和OpenId进行存储\[1\]。对于抖音登录cookie的获取,需要调用抖音的登录接口,并将获取到的用户信息和存储的OpenId作为参数传递给后端自己编写的登录接口,以获取cookie等信息完成登录\[1\]。请注意,具体的实现细节可能需要根据抖音的开发文档和后端接口的要求进行调整。 #### 引用[.reference_title] - *1* [uni-app授权登录,获取用户信息用户手机号](https://blog.csdn.net/iblackboy/article/details/121854513)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [Uniapp uni-app学习与快速上手](https://blog.csdn.net/Beatingworldline/article/details/131225898)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值