钉钉免登录接口

查阅钉钉提供的开发文档,发现了三种免登录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,以便后面调取接口的时候使用

相关推荐
袋鱼不重30 分钟前
乐观锁与悲观锁:原理、选型与前后端实践
前端·后端
Charonmomo1 小时前
react/antd - 不能正确打开标签页问题记录
前端·react.js·前端框架
gis开发之家1 小时前
vue3直击架构痛点 依赖倒置与接口隔离——打造坚如磐石的插件与高阶组件(HOC)模式
javascript·架构·typescript·前端框架·vue3
柒和远方1 小时前
LeetCode 139. 单词拆分 —— 从暴力回溯到 DP 完全背包
javascript·python·算法
先吃饱再说1 小时前
流式输出完全指南:让 AI 对话像打字机一样流畅
javascript·vue.js
冬枳1 小时前
基于OpenSeagragon封装的前端病理切片展示组件
前端·typescript
爱勇宝2 小时前
《道德经》第6章:别把团队的创造力用到枯竭
前端·后端
无双_Joney2 小时前
[四期 - 4] NestJS专栏 - 征召一下大家的意见,非常想知道大家都想看看Nest的哪些方面
前端·后端·nestjs
彭亚川Allen2 小时前
停更的这一年,All In AI、陪媳妇生娃、还考了个研
前端·后端·产品经理
爱分享的程序猿-Clark2 小时前
【前端开发】前端开发者如何使用 Claude Code 快速搭建 React 项目!(小白都能学会的教程)
前端·react.js