钉钉免登录接口

查阅钉钉提供的开发文档,发现了三种免登录API接口

当然,在使用之前还是要先下载钉钉对应的依赖包 dingtalk-jsapi ,并在页面内引入

1. dd.requestAuthCode

复制代码
dd.requestAuthCode({
  corpId: config.corpId,
  clientId: config.clientId,
  onSuccess: function (result) {
    console.log('result', result);
    return result.code
  },
  onFail: function (err) {
    return err
  },
});

2. dd.getOperateAuthCode

复制代码
dd.getOperateAuthCode({
  corpId: 'xxxxxxxxxxxxxx',
  agentId: '1111133322222',
  success: (res) => {
    uni.showToast({ title: res.code , icon: 'none' })
  },
  fail: (err) => {
    uni.showToast({ title: 'err'+ err , icon: 'none' })
  },
  complete: () => {},
});

3. dd.getAuthCode

复制代码
dd.getAuthCode({
  corpId: config.corpId,
  success: (res) => {
    const data = { authCode: res.code, platform: 'DingTalk' }
    $login(data).then((result) => {
      setToken(result.token)
      setId(result.userid)
    }).catch((err) => {
      uni.showToast({ title: '登录失败!'+ JSON.stringify(err) , icon: 'none', duration: 3000 } )
    })
  },
  fail: (err) => {
    uni.showToast({ title: 'err'+ JSON.stringify(err) , icon: 'none', duration: 3000  } 
  )},
  complete: () => {},
});

我用的是第三个接口实现的功能,首先需要去申请一个 corpId去关联,然后调用接口的时候把 corpId传入进去

在成功回调 success 内,会返回当前用户对应的 code 加密字符

得到code后,调取后端提供的接口,把对应的code传入,调取通过,后端会返回 token 等信息

存入 token,以便后面调取接口的时候使用

相关推荐
三十而立洋9 分钟前
深入理解 npm:从核心机制到常用命令全解析
前端·前端工程化
Canace12 分钟前
最新版 Codex 工作流的问题
前端·人工智能·agent
AZaLEan__14 分钟前
事件循环讲解
javascript
变与不变80615 分钟前
引用类型、内存原理与对象
开发语言·前端·javascript
jearry16 分钟前
给 C++ 老程序补现代 UI:WebView2 多入口资源加载与虚拟主机名实践
前端
Highcharts17 分钟前
Highcharts实战讲解|散点图+多项式回归曲线复杂图表示列Demo
javascript·数据可视化
打呵欠的猫19 分钟前
让 AI 帮你写 Git Commit Message:从"fix bug"到语义化提交只需一个 Hook
前端·ai编程
labixiong20 分钟前
CSS 锚点定位实测:零 JS 实现气泡跟随,自动翻转很香但暗藏 3 个致命坑
前端·css
qibmz20 分钟前
用 DeepSeek 给 GitHub 仓库加 PR 自动 Review
前端
计算机魔术师21 分钟前
幻觉率从 4.2% 降到 2% 又退回,GPT-6 Astra 到底在藏什么
前端