钉钉微应用 - - - - - 钉钉内打开新页签

钉钉内打开新页签

  • [1. 引入安装dingapi](#1. 引入安装dingapi)
  • [2. 页面内定义方法](#2. 页面内定义方法)
  • [3. 使用](#3. 使用)
  • [4. 遇到的问题](#4. 遇到的问题)

1. 引入安装dingapi

bash 复制代码
// 方案1 html引入
<script src="https://g.alicdn.com/dingding/open-develop/1.9.0/dingtalk.js"></script>

// 方案2 npm安装
npm install dingtalk-jsapi

2. 页面内定义方法

js 复制代码
    /**
     * 钉钉内部 打开新的页签
     * @param {*} url
     */
    const openNewTabs = (url) => {
      dd.biz.util.invokeWorkbench({
        app_url: url,
        app_info: {
          app_tab_key: "123",
          app_refresh_if_exist: true,
          app_active_if_exist: true,
        },
        onSuccess: function (result) {
          console.log("result: ", result);
        },
        onFail: function (err) {
          console.log("err: ", err);
        },
      });
    };

3. 使用

在需要的逻辑处直接调用上述方法即可,如

js 复制代码
const queryString = new URLSearchParams(query).toString();
let url = `${BASE_URL}?${queryString}`;
openNewTabs(url);

4. 遇到的问题

  1. jsapi ticket 签名失败
    errorMessage: "签名校验失败,nonce:[K3GweCfFRNGqpFQk],timestamp:[1718851632],url:[*****],ticketList:[*******]"

注意:
后端生成签名时使用的的url不要包含#

因为如果使用包含#号url进行签名生成,钉钉生成的签名会忽略#及其后面的内容。

所以签名校验会失败!!!!

相关推荐
Teable任意门互动5 天前
主流多维表格产品深度解析:飞书、Teable、简道云、明道云、WPS
开发语言·网络·开源·钉钉·飞书·开源软件·wps
木易 士心13 天前
组织架构树形选择组件使用说明(Vue3 + UniApp)
微信小程序·钉钉·notepad++
刘梦凡呀13 天前
C#获取钉钉平台考勤记录
java·c#·钉钉
LoneEon17 天前
Zabbix 配置钉钉告警
ubuntu·钉钉·zabbix
yunson_Liu17 天前
编写Python脚本在域名过期10天内将域名信息发送到钉钉
开发语言·python·钉钉
唤醒手腕17 天前
唤醒手腕2025年最新钉钉开放平台钉钉机器人stream搭建部署详细教程(更新中)
机器人·钉钉
路边闲人21 个月前
用python向钉钉群发送消息
钉钉
腾飞开源1 个月前
02_钉钉消息处理流程设计
人工智能·钉钉·agent智能体·ai智能体开发·全网首发·新课上线·消息处理器
蓝婴天使1 个月前
Debian13 钉钉无法打开问题解决
linux·服务器·钉钉
阿登林1 个月前
C#调用钉钉API实现安全企业内部通知推送
安全·c#·钉钉