前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >vue项目对接钉钉企业内部H5微应用

vue项目对接钉钉企业内部H5微应用

作者头像
薛定喵君
发布于 2020-12-01 02:23:41
发布于 2020-12-01 02:23:41
2.9K00
代码可运行
举报
文章被收录于专栏:薛定喵君薛定喵君
运行总次数:0
代码可运行

最近公司项目又需要接入钉钉啦 ?,所以又去做了钉钉的企业内部应用对接。

应用场景 将之前已经有的 H5 应用接入钉钉内,无需输入账号密码便可直接登录。

# 准备工作

  • 1.注册钉钉(废话)
  • 2.负责开发的相关人员申请成为钉钉子管理员(找公司内的超管申请)
    • 注意需要管理员赋予必要的权限,例如:
      • 开发应用的数据权限
      • 开发者权限
      • 工作台管理
      • 应用中心管理
  • 3.登录钉钉开发者后台 只有管理员和子管理员可登录开发者后台
  • 4.在应用开发页面,选择企业内部开发 > H5微应用,然后单击创建应用
  • 5.填写应用的基本信息,然后单击确定创建
  • 6.在应用信息页面,单击开发管理,然后单击修改
    • 这里注意『开发模块』的选择。如果已有可接入的H5应用时,文档提示说选择『快捷链接』的方式,但是如果后端需要请求钉钉的话就要配置服务器出口IP(白名单)了,所以还是得选择『开发应用』,不然无法配置后端请求的白名单(坑)
  • 7.单击凭证与基础信息获取应用的AppKey和AppSecret
  • 8.如果需要获取通讯录权限,就要添加合适的接口权限

# 开发流程

# 项目修改

# 项目情况

技术栈

  • vue 2.6.11
  • vue-cli 2.9.6
# 接入步骤
# 依赖安装

更目录执行以下命令

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
npm install dingtalk-jsapi --save
# 获取微应用免登授权码方法封装

项目的 utils 目录下(当然也可以选择 common 组件目录)新建文件dd.js

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import * as dd from 'dingtalk-jsapi'

export function getCode(callback) {
  let corpId = 'your corpId'
  if (dd.env.platform !== 'notInDingTalk') {
    dd.ready(() => {
      //使用SDK 获取免登授权码
      dd.runtime.permission.requestAuthCode({
        corpId: corpId,
        onSuccess: info => {
          // 根据钉钉提供的api 获得code后,再次调用这个callback方法
          // 由于是钉钉获取code是异步操作,不知道什么时候执行完毕
          // callback 函数会等他执行完毕后在自己调用自己
          callback(info.code)
        },
        onFail: err => {
          alert('fail')
          alert(JSON.stringify(err))
        }
      })
    })
  }
}

corpId 可到后台 基本信息->开发信息(旧版)->企业自用账号信息 下查看。

# 应用入口页面修改
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import { getCode } from '@/utils/dd'

export default {
  data() {
    return { }
  },
  methods: {},
  created() {
    getCode(code => {
      // 登录处理
    })
  }
}

# 对接感受

从 H5 微应用的对接来看没有特别复杂的配置,对接起来很流畅,基本没有卡壳的地方

  • 官方文档有一处写的不够准确,已有H5应用时引导用户选择快捷链接开发模式,但是这种模式下如果后端需要请求钉钉接口的话就找不到配置IP白名单的地方了,比较尴尬。
  • 权限管理的地方,涉及到通讯录权限时,基本信息与成员手机号、邮箱都是分开的权限需要手动添加,不然是获取不到相应信息的
  • 参与测试人员需要在应用的版本管理与发布tab页单独设置可使用范围才能使相关开发人员在钉钉客户端上看见入口

# 参考资料

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/11/30 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
一文聊聊接入钉钉H5微应用系统实现免登操作技术思路实现验证
请求地址:https://oapi.dingtalk.com/topapi/v2/user/getuserinfo
舒一笑不秃头
2025/03/31
1050
一文聊聊接入钉钉H5微应用系统实现免登操作技术思路实现验证
Java钉钉开发_02_免登授权(身份验证)
将所有待签名参数按照字段名的ASCII 码从小到大排序(字典序)后,使用URL键值对的格式 (即 key1=value1&key2=value2…)拼接成字符串string1
shirayner
2018/08/10
3.5K0
Java钉钉开发_02_免登授权(身份验证)
钉钉E应用开发踩过的小坑之钉钉官网有两个全局错误码链接,啥区别??
https://open-doc.dingtalk.com/microapp/serverapi2/npfg02这是一个含错误码和说明(我一直看的是这个全局错误码,只看说明的话满脑子是问号啊 O(∩_∩)O哈哈~)
全栈程序员站长
2022/08/15
3.7K0
钉钉对接
https://open.dingtalk.com/document/resourcedownload/local-development-tools-for-microapplications
码客说
2023/03/25
1K0
钉钉对接
玩一玩钉钉第三方授权
胖sir:小魔童,我今天收到了一个需求,期望我们做一个第三方登录的功能,用户可以通过第三方授权来登录我们的web
阿兵云原生
2023/02/16
6120
企业内部应用接入钉钉获取部门及人员信息
记录下对应的AgentId、AppKey、AppSecret,上面步骤都操作完成之后需要开启对应权限,由于我们需要获取部门及人员信息,因此需要开启对应权限,点击【权限管理】选择需要的权限点击【申请权限】即可,如图
六月的雨在Tencent
2024/03/29
3720
企业内部应用接入钉钉获取部门及人员信息
如何实现H5端对接钉钉登录并优雅扩展其他平台
下图中需要说明的一点是,准确来说步骤3来说是钉钉API返回给前端,前端携带一次性校验码token给后端进行后续的鉴权。
舒一笑不秃头
2025/04/07
1260
如何实现H5端对接钉钉登录并优雅扩展其他平台
钉钉一键登录第三方网站
企业内部系统已经做过了钉钉扫码登录,现在需要添加钉钉一键登录第三方网站功能,这里主要记录一键登录整个实现步骤。
六月的雨在Tencent
2024/03/29
3790
钉钉一键登录第三方网站
产品端对接三方登录设计方案
对接钉钉、飞书、企业微信及自研三方平台实现H5免登录,不同平台协议的核心差异在授权流程,下面详细对钉钉侧说明。
舒一笑不秃头
2025/03/31
810
产品端对接三方登录设计方案
钉钉一键登录(web端)
首先是进入钉钉的访问凭证,也就是咱们的授权页面,这个是钉钉已经集成好的,咱们只需要更改一下配置就好了。
Java king
2023/02/21
2.3K0
钉钉扫码登录对接(NodeJS)
3.进入应用, 点击侧边栏凭证与基础信息, 先记录client\_id和client\_secret, 这个前后端都需要用到
治电小白菜
2024/02/23
4820
web项目对接钉钉扫码登录
今天我们记录一下关于vue进行web开发的过程中对接钉钉的H5微应用的时候扫码登录的功能,你说他难吧,其实不难,很简单,你说他简单吧,看文档可能真的有点乱,不然您也不会来看我的帖子,我也看了别的大佬们写的关于这个的记录,不是说写的有问题,只是说很少有人站在别人开发的角度看待问题,导致很多人觉得还是不明白,所以今天就我写的过程中出现的问题进行描述一下大家可能迷茫的地方,尽量让每个开发者都看得懂! 感谢以下提供支持的博主: 填了个大空 易-水寒
何处锦绣不灰堆
2020/10/30
3.3K2
web项目对接钉钉扫码登录
RuoYi框架集成DingDing登录
图片图片图片图片集成概览login.js:api定义钉钉登录接口user.js:在钉钉登录成功后,设置tokenlogin.vue:使用钉钉的默认集成页面进行钉钉登录DingDingService.java(以及它的实现类 DingDingServiceImpl.java):访问钉钉的服务接口SysLoginController.java:定义钉钉登录接口pom.xml:添加钉钉服务依赖jar包SecurityConfig.java:将钉钉登录接口设置为可匿名访问UserDetailsServiceImpl
在下是首席架构师
2023/03/30
2.7K3
RuoYi框架集成DingDing登录
微信生态圈 | 企业微信中登录H5不便?“免密登录”来帮忙!
在日常工作中,我们经常需要使用企业微信进行沟通和协作。 然而,每次在企业微信打开H5页面时,都需要在H5页面输入账号密码进行登录,这不仅繁琐,而且在交互体验方面也比原生差。 那么,有没有一种方法可以让我们免去这个步骤呢? 答案是肯定的,那就是免密登录。接下来,我们将详细介绍免密登录的概念、实现条件以及具体操作方法。
烟雨平生
2023/10/25
7120
微信生态圈 | 企业微信中登录H5不便?“免密登录”来帮忙!
记一次企业微信对接踩坑之旅(ಥ_ಥ)
最近公司项目需要接入企业微信,所以体验了一把企业微信的对接流程,把对接过程中遇到的问题总结一下。
薛定喵君
2020/10/23
3.8K0
Java钉钉开发_03_通讯录管理之 人员管理 和 部门管理
一、本节要点 1.通讯录权限 ISV(应用服务商)默认无管理通讯录的权限,企业应用默认有所有通讯录权限。 2.数据传输格式—JSON 请参见: Java_数据交换_fastJSON_01_用法入门 二、代码实现 1.HTTP请求工具类—HttpHelper package com.ray.dingtalk.qy.util; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import jav
shirayner
2018/08/10
2.1K0
Python3.7配合Django2.0来调用钉钉(dingding)在线api实时监测员工考勤打卡情况
    新冠疫情期间,大多数公司为了避免交叉感染都或多或少的采用了远程办公的方式,这显然是一个明智的选择,基本上钉钉(dingding)作为一个远程办公平台来用的话,虽然差强人意,但是奈何市面上没有啥更好的选择,矬子里拔将军,也还是可以凑合用的,不过远程办公有个问题,就是每天需要检查员工的考勤,居家办公虽然灵活,但是大家究竟有没有办公,则是另外一回事,钉钉提供的解决方案就是考勤在线打卡功能,但是检查出勤钉钉在移动端就有点费劲,需要在钉钉app里点击至少5次,还不能实时刷新,pc端的钉钉oa系统做的更烂,还不如移动端来得方便,另外如果你在一家上千人的企业里,这家企业有大大小小几十个部门,你又非常倒霉的担任这家公司的人事主管,每天按部门来出员工考勤报表就不是一件容易事了,所以利用钉钉开放的接口,使用Django自己打造一套实时监控员工考勤的web平台是我们本次的目的。
用户9127725
2022/08/08
1.2K0
Python3.7配合Django2.0来调用钉钉(dingding)在线api实时监测员工考勤打卡情况
企微获取用户敏感数据
从2022年6月20号20点开始,除通讯录同步以外的基础应用(如客户联系、微信客服、会话存档、日程等),以及新创建的自建应用与代开发应用,调用该接口时,不再返回以下字段:头像、性别、手机、邮箱、企业邮箱、员工个人二维码、地址,应用需要通过oauth2手工授权的方式获取管理员与员工本人授权的字段。
ha_lydms
2023/08/10
1.2K0
企微获取用户敏感数据
钉钉企业应用网关接入(保姆级教程)
2. 配置成功后, 进行测试 需要先将事件回调sdk部署在内网服务器上才能够进行测试
时间静止不是简史
2022/09/28
1.8K0
钉钉企业应用网关接入(保姆级教程)
钉钉机器人推送文件
api调试平台:API Explorer (dingtalk.com)(很多api可以在这直接搜,直接调试),并且以下代码会在调试中直接生成!!!!
布衣者
2023/08/17
9950
钉钉机器人推送文件
推荐阅读
相关推荐
一文聊聊接入钉钉H5微应用系统实现免登操作技术思路实现验证
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验