当前位置:   article > 正文

基于uniapp开发自建钉钉H5微应用及免登获取用户信息_钉钉应用免登录获取登录的用户信息

钉钉应用免登录获取登录的用户信息

打开 钉钉开发平台,创建应用—填写基本信息—添加应用能力选择网页应用—填写网页应用信息—权限管理配置项如下图所示—应用发布
JSAPI: JSAPI.
在这里插入图片描述

1、安装依赖

npm install dingtalk-jsapi --save
  • 1

2、根据钉钉企业id获取微应用免登授权码code

  • 在utils下新建一个文件dingding.js(钉钉获取code是异步操作,不知道什么时候执行完毕。callback 函数会等他执行完毕后再自己调用自己)
import * as dd from "dingtalk-jsapi"
export function GetCode(callback) {
    const corpId = 'dingxxxxxxxxx' //钉钉企业id
    if (dd.env.platform !== "notInDingTalk") {
      dd.ready(() => {
        dd.runtime.permission.requestAuthCode({
          corpId: corpId,
          onSuccess: (info) => {
            callback(info.code)
          },
          onFail: (err) => {
            alert('fail')
          }
        })
      })
    }
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18

3、获取到免登授权码code传给后端,返回一些项目可用信息

  • 页面使用如下:
import { GetCode } from "../../utils/dingding.js"
GetCode((code) => { 
  //如果获取到code,就调取dingTalkLogin接口把code传给后端用来获取用户信息
  dingTalkLogin(code)
    .then((res) => {
      if (res.status == 200) {
        //这里就会获得token、name等一些信息,可以做下一步操作啦~
        uni.setStorageSync("token", res.data.accessToken)
      }
    })
    .catch((err) => {
      uni.showModal({
        title: "温馨提示" + err,
        content: JSON.stringify(err)
      })
    })
})
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/617268
推荐阅读
相关标签
  

闽ICP备14008679号