当前位置: 首页 > news >正文

开发钉钉微应用,实现免登+调试

1.创建h5微应用

https://open.dingtalk.com/document/orgapp/develop-org-h5-micro-applications

根据里面的三个步骤,创建h5微应用

2.免登之前必须要先进行JSAPI的授权

文档说明:
https://open.dingtalk.com/document/orgapp/jsapi-authentication

根据文档中的说明
步骤1,2后端请求钉钉接口
步骤3,提供一些数据(url: location.href.split(‘#’)[0])
步骤4,后端生成签名
步骤5,引入js
步骤6,根据后端接口数据,返回dd.config参数
步骤7,调用dd里面的接口

● dd.config中所有的参数必须直接来自服务端,不能直接在前端定义。
● 一个页面只需要调用一次dd.config即可,重复调用会复用第一次调用的参数,单页应用(SPA)的router切换视为同一个页面。

3.免登操作

文档说明:
https://open.dingtalk.com/document/orgapp/logon-free-process
企业id获取

在这里插入图片描述

微应用id

在这里插入图片描述

通过该免登授权码可以获取用户身份,就可以通过后端接口去获取该用户信息了

  1. 前端通过sdk访问dd.runtime.permission.requestAuthCode,获取免登授权码;
  2. 通过接口传递免登授权码给后端,后端调用钉钉提供的公共接口,获取access_token, 获取用户的userid, 获取用户详情; 文档链接
  3. 调用sdk接口之前,有些需要鉴权,有些不需要鉴权,具体查看文档链接
  4. JSAPI鉴权
  5. 鉴权步骤中,步骤1,2,3,4为后端操作;
  6. 前端直接调用钉钉公共接口,会跨域请求
  7. 未鉴权前调用JSAPI中需要鉴权的接口,接口会报错

4.调试问题

开发过程中,肯定避免不了调试,但是调用钉钉提供的api(比如dd.config),必须要在钉钉环境内进行

在这里插入图片描述
官方文档也有调试的工具,文档如下:
https://open.dingtalk.com/document/resourcedownload/local-development-tools-for-microapplications
但是尝试过,还是报错

在这里插入图片描述
后面我就不使用这个调试工具,而是用vconsole这个工具(https://github.com/Tencent/vConsole)

这个用于调试移动端的开发工具,只是要特别注意,在生产环境,要隐藏掉

这个时候页面上会出现一个Vconsole绿色的小按钮,点击之后,可以充当浏览器的控制台输出了

然后我们需要配置开发管理
协议+ip地址+端口号

在这里插入图片描述

然后点击发布,选择部分员工,只有你可见

在这里插入图片描述

在PC端的钉钉工作台就能看到这个微应用了,你也可以正常调用钉钉接口,且在钉钉环境内了

http://www.lryc.cn/news/34842.html

相关文章:

  • 0308java基础-注解,反射
  • 【鸿蒙应用ArkTS开发系列】- 页面跳转及传参
  • StringBuilder 类
  • kubectl-k8s用户切换
  • 【面试题】三道面试题让你掌握JavaScript中的执行上下文与作用域以及闭包
  • 计算机网络-- 应用层(day08)
  • English Learning - L2-5 英音地道语音语调 弹力双元音 [ɪə] [ʊə] [eə] 2023.03.6 周一
  • SpringBoot——统一功能处理
  • ORACLE SQL格式化小数点
  • 【信息学奥数】—— 第一部分 C++语言 知识总结
  • video层级过高,以及界面使用多个video时,在安卓APP上同时播放的问题(uniapp)
  • C++基础了解-14-C++ 字符串
  • 浅谈几种网络攻击及攻防原理
  • Kafka消息中间件(Kafka与MQTT区别)
  • Go垃圾回收原理
  • Coredump-N: stack 空间被临时变量吃满,导致内存访问出现问题
  • GO中使用viper读取配置文件
  • webpack dll 提升构建速度
  • C++面向对象编程之三:初始化列表、类对象作为类成员、静态成员
  • 跨域问题解决方案
  • Vue3电商项目实战-购物车模块7【20-登录后-批量删除、21-登录后-选中状态修改数量、22-登录后-全选反选、23-登录后-修改规格、24-下单结算】
  • 软件测试之快速熟悉项目
  • 软考高级信息系统项目管理师系列之二十一:项目风险管理
  • 打包成JAR文件和WAR文件,到底有什么区别?
  • STM32 OTA应用开发——通过串口/RS485实现OTA升级(方式1)
  • 在教学中常被问到的几个vue3.x与typescript的问题,统一解答
  • 纯css实现超炫酷的星空背景按钮
  • openpnp - 贴片前, 放入一块新板子后, 对板子的坐标矫正
  • 计及需求响应的改进灰狼优化算法求解风、光、柴、储容量优化配置(Matlab代码实现)
  • Elasticsearch使用——高级篇