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

钉钉内打开新页签

  • [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进行签名生成,钉钉生成的签名会忽略#及其后面的内容。

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

相关推荐
皮皮虾❀18 小时前
企业协同办公平台深度对比:钉钉、飞书、企微的区别与钉钉服务商典铭云赛推荐
钉钉·飞书·企业微信
皮皮虾❀5 天前
专属钉钉定制开发需要多少钱?2026年费用构成方案
钉钉
皮皮虾❀5 天前
钉钉AI算粒收费后,如何零成本搭建专属钉钉智能体?
人工智能·钉钉
数聚天成DeepSData6 天前
内网多人在线填表自动汇总系统搭建:飞书钉钉与开源Baserow、NocoDB方案
开源·钉钉·飞书
xixingzhe26 天前
与钉钉机器人交互通信
钉钉
皮皮虾❀6 天前
典名科技:钉钉六星级钻石服务商
科技·钉钉
微学AI6 天前
内网穿透的应用-服务器日志出现异常怎么办?Python监控、钉钉告警与远程处理教程
服务器·python·钉钉
yyxx4121237 天前
金蝶和钉钉怎么打通?
钉钉
晨陌y8 天前
多台服务器怎么统一监控?哪吒面板部署、钉钉告警与远程访问教程
运维·服务器·钉钉
北极糊的狐15 天前
钉钉小程序 Git 版本管理完整流程
git·小程序·钉钉