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

简介: 公司项目需要接入钉钉 🐶,所以做了钉钉的企业内部应用对接。

公司项目需要接入钉钉 🐶,所以做了钉钉的企业内部应用对接。

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

准备工作

  • 1.注册钉钉(废话)
  • 2.负责开发的相关人员申请成为钉钉子管理员(找公司内的超管申请)

    • 注意需要管理员赋予必要的权限,例如:

      • 开发应用的数据权限
      • 开发者权限
      • 工作台管理
      • 应用中心管理
  • 3.登录钉钉开发者后台

    只有管理员和子管理员可登录开发者后台
  • 4.在应用开发页面,选择企业内部开发 > H5微应用,然后单击创建应用

dd-create-h5.png

  • 5.填写应用的基本信息,然后单击确定创建
  • 6.在应用信息页面,单击开发管理,然后单击修改

    • 这里注意『开发模式』的选择。如果已有可接入的H5应用时,文档提示说选择『快捷链接』的方式,但是如果后端需要请求钉钉的话就要配置服务器出口IP(白名单)了,所以还是得选择『开发应用』,不然无法配置后端请求的白名单(坑)

    dd-dev-manage.png

  • 7.单击凭证与基础信息获取应用的AppKey和AppSecret
  • 8.如果需要获取通讯录权限,就要添加合适的接口权限

dd-api-auth.png

开发流程

项目修改

项目情况

技术栈

  • vue 2.6.11
  • vue-cli 2.9.6

接入步骤

依赖安装

更目录执行以下命令

npm install dingtalk-jsapi --save
获取微应用免登授权码方法封装

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


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 可到后台 基本信息->开发信息(旧版)->企业自用账号信息 下查看。

应用入口页面修改

import { getCode } from '@/utils/dd'

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

对接感受

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

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

参考资料

相关文章
|
8月前
|
搜索推荐
钉钉:不可取代的企业通讯与管理工具
钉钉:不可取代的企业通讯与管理工具
|
8月前
|
机器人 API
Eolink神技之三、钉钉API对接
Eolink神技之三、钉钉API对接
109 0
|
8月前
|
数据安全/隐私保护
钉钉:一个项目的成功交付与客户价值的实现
钉钉:一个项目的成功交付与客户价值的实现
|
2月前
|
运维 网络安全 数据安全/隐私保护
Nextcloud一键部署:快速搭建如企业钉钉或飞书的团队协作平台
Nextcloud Hub 是一款来自德国的完全开源的云上托管内容协作平台。团队内成员可以通过移动、桌面和 Web 界面访问、共享和编辑文档,聊天和参与视频通话以及管理邮件、日历和项目。目前,Nextcloud的产品定位是在保障数据安全下的完整协作平台,功能类似国内的企业钉钉或飞书。Nextcloud官网:[https://nextcloud.com/](https://nextcloud.com/) 。
Nextcloud一键部署:快速搭建如企业钉钉或飞书的团队协作平台
|
4月前
|
人工智能 自然语言处理 运维
钉钉x昇腾:用AI一体机撬动企业数字资产智能化
大模型在过去两年迅速崛起,正加速应用于各行各业。尤其在办公领域,其主要模态——文字和图片,成为了数字化办公的基础内容,催生了公文写作、表格生成、文本翻译等多种应用场景,显著提升了工作效率。然而,AI引入办公场景也带来了数据安全与成本等问题。为此,钉钉与昇腾联合推出的“钉钉专属AI一体机解决方案”,通过本地化部署解决了数据安全、成本高昂及落地难等痛点,实现了从硬件到软件的深度协同优化,为企业提供了开箱即用的AI服务,推动了办公场景的智能化升级。
163 11
|
3月前
|
人工智能 安全 机器人
Dify开发Agent对接钉钉机器人
这篇文章详细讲解了如何在Dify平台上开发一个Agent并与钉钉机器人集成,实现自动化消息处理和响应功能。
237 0
|
7月前
|
人工智能 移动开发 IDE
安利几款与钉钉平台无缝集成打通账号认证的企业文档管理系统
钉钉是很多中小企业都爱用的产品,开通账号就能直接使用了,应用生态非常丰富,尤其是AI技术的应用,走在行业前列。但仍有很多企业对于全面拥抱SaaS服务充满了顾虑,尤其在内部资料的管理这块,即使钉钉在线文档已经提供了非常优秀的协作体验,不少客户仍更偏爱私有部署在局域网里面的企业文档管理系统。那么能将企业内部部署的文档管理系统集成到钉钉平台上面,和钉钉文档并行使用呢?市面上又有哪些企业文档管理系统软件支持与钉钉的集成呢?这也是很多企业客户的疑问。
安利几款与钉钉平台无缝集成打通账号认证的企业文档管理系统
|
7月前
|
移动开发 文字识别 算法
视觉智能开放平台产品使用合集之如何集成到使用钉钉端的H5应用中
视觉智能开放平台是指提供一系列基于视觉识别技术的API和服务的平台,这些服务通常包括图像识别、人脸识别、物体检测、文字识别、场景理解等。企业或开发者可以通过调用这些API,快速将视觉智能功能集成到自己的应用或服务中,而无需从零开始研发相关算法和技术。以下是一些常见的视觉智能开放平台产品及其应用场景的概览。
|
8月前
|
人工智能
|
8月前
|
敏捷开发 测试技术 持续交付
云效产品使用常见问题之企业钉钉解散后,不知道云效功能是否可以正常使用如何解决
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。

热门文章

最新文章