详细介绍:jeecg-boot3.7.0对接钉钉登录(OAuth2.0)

news/2025/9/20 19:20:56/文章来源:https://www.cnblogs.com/ljbguanli/p/19102754

详细介绍:jeecg-boot3.7.0对接钉钉登录(OAuth2.0)

当前的jeecg-boot 是3.7.0

前端问题:

1.前端的路由vue-router的版本需要固定死。要不然会报page_not_found router the same.这种奇奇怪怪的问题。
就是把package.json的“^”,这个符号,删掉。(或者全局搜索,这个page not found 啥啥啥,然后加上个任意字符串,也行)。

2.改了domain_url,好像这个热更新是不及时的。请自己重启前端项目

后端问题:

1.后端的dingding的clientId获取有挑战,即便你在application-xxx.yml里面配了,他还是获取不到。

所以建议:直接写死,因为你的dingding工作台应用就创建了这一个,写死没啥问题。

2.租户id(tenantId),这里后端写的是defaultValue=0,但是怎么查,都查不到数据库。要不然会报奇奇怪怪的错(当时报了:请查看应用key和应用秘钥是否正确,组织ID是否匹配)
其实跟这个无关。就是租户id写错了。

所以建议:如果只有一个租户,就defaultValue=当前租户,写死就好。(这个后台框架查不到租户,也是无语);

钉钉问题:

0. 首先要同步一下组织架构(第三方配置-> 钉钉同步里面配好appkey这些 ->点击“同步”)

1.“添加应用能力”->选择“网页应用”。

2.然后点击“网页应用”,配置下面内容
应用首页地址:(我这里随便调整的)
https://cn.bing.com

前端就是PC端首页地址:(这个localhost:3100内网穿透到xg-2.frp.one:3100
http://xg-2.frp.one:3100/

3.权限管理设置:
3.1 请选择权限范围: 全部员工
3.2 我这里个人测试,“个人权限”->全选启用了,"通讯录权限"->全选启用了

4.配置“分享设置”(钉钉授权登录回调地址):
回调域名:(这后面一坨不要动“/jeecg-boot/sys/thirdLogin/dingtalk/callback“)
(后端localhost:8080内网穿透到xg-2.frp.one:8080
http://xg-2.frp.one:8080/jeecg-boot/sys/thirdLogin/dingtalk/callback

⚠️这里配完之后“安全设置”的“重定向URL(回调域名)”也就配完了,这两个是同步的。
⚠️要是之后遇到啥问题的话,在“安全设置”配一下“服务器出口IP”,自己用百度搜索IP,就能看到自己当前局域网出口ip了。

5.最后。版本管理与发布。
5.1 新建版本
5.2 直接发布

之后你就可以从钉钉工作台点进去登录了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/908513.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++编程软件 Dev-C++ 安装及使用流程

目录第 1 步:下载 Dev-C++第 2 步:安装 Dev-C++第 3 步:第一次打开 Dev-C++ 时的配置第4步:编写一个 C++ 程序 第 1 步:下载 Dev-C++ 首先,我们需要找一个地方下载 Dev-C++ 软件。 可以直接点击 这个链接 下载。…

DLL植入漏洞分类与微软安全响应指南

本文详细解析微软对DLL植入漏洞的分类方法,涵盖应用程序目录、当前工作目录和PATH目录三种场景的威胁评估标准,并说明微软针对不同场景的安全响应策略与修复优先级。DLL植入漏洞的分类 | MSRC博客 本文章翻译自Secur…

4980:拯救行动

题目 总时间限制: 1000ms 内存限制: 65536kB 描述 公主被恶人抓走,被关押在牢房的某个地方。牢房用N*M (N, M <= 200)的矩阵来表示。矩阵中的每项可以代表道路(@)、墙壁(#)、和守卫(x)。 英勇的骑士(r)决定…

java03-wxj

好的,我们来逐一详细解答这些问题。1. 什么样的方法应该用static修饰?不用static修饰的方法往往具有什么特性? 应该使用 static 修饰的方法:工具方法(Utility Methods): 执行一个与任何特定对象实例无关的通用任…

题解:P13969 [VKOSHP 2024] Exchange and Deletion

题面: 我们考虑从图论意义计数,把 swap 改成连边,由于交换完前面的点直接被删了,所以只保留从后向前的连边。 那么最后连到 \(n-k\) 前的点的数值等于链头,而 \(n-k\) 后的点和链上非链头的点实际上都被删了。手玩…

基于MATLAB的车牌识别系统 - 实践

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

市场交易反心理特征之二:忽视热点切换的苗头

案例:2017年8月18日,万科A。2017年8月18日,万科A 万科A小波段延续万科A一个波段完成​情况描述:从第一次触及无穷成本线止跌后大资金进入开始,连续2-3次出现买点,都能选出。但是都直接鼠标滑过,没有过脑子,显然…

Linux服务器上安装配置GitLab的步骤

在Linux服务器上安装GitLab是一个涉及多个步骤的过程。以下是详细的步骤,遵从GitLab官方推荐的做法以确保系统的稳定性和性能。 服务器要求和前提条件:一台运行支持的Linux操作系统的服务器,建议使用CentOS 7。 至少…

贪心算法应用:投资组合再平衡问题详解 - 实践

贪心算法应用:投资组合再平衡问题详解 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", &q…

MCP:Trae中集成Playwright 实现网页自动化测试

Trae IDE 可以通过智能问答的形式补齐代码,纠正程序中的错误,根据用户的自然语言,实现AI自动编程。近期使用了一下Trae,发现很强大。我把一个有前后端的项目导入Trae IDE,当时还有一些报错,但是很快在Trae 的提示…

C语言中的字符、字符串及内存操作函数详细讲解

在C语言中,字符和字符串的处理是基本且重要的概念。字符在C中通常由 char类型表示,而字符串则是以 null终止的字符数组。内存操作函数则提供了基本的内存处理能力,如复制、设置、比较等内存块。 字符操作 字符使用 …

06、訊息收集

1、使用nmap探测magedu.com开放的端口号和服务指纹 2、使用指纹识别工具探测magedu.com采用的建站模板 3、搜集magedu.com的子域名有哪些

AI 智能体与 Coze 工作流实践:小红书对标账号采集 - 实践

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

在Linux中设定账户密码的安全性策略

在Linux环境下,确保账户密码的安全性是保护系统安全的重要环节。要设置强健的密码策略,需要从多个层面制定规则,这些包括密码复杂性、长度、有效期限、历史记录限制和尝试次数限制等方面。 密码复杂性设定和管理:密…

对比六种JavaScript全文搜索库 fuse.js 、 lunr 、 flexsearch 、 minisearch 、 search-index 、 js-sea

以下是针对六种JavaScript全文搜索库的对比分析,综合功能特性、性能表现及适用场景: 核心特性对比‌Fuse.js‌‌算法‌:基于Bitap算法的模糊搜索,支持拼写容错和多种匹配模式(前缀、后缀、逻辑组合等)7。 ‌配置…

精选 4 款基于 .NET 开源、功能强大的 Windows 系统优化工具,助力轻松提升 Windows 系统性能与使用体验!

前言 今天大姚给大家推荐 4 款基于 .NET 开源、功能强大的 Windows 系统优化工具,希望可以帮助你轻松提升 Windows 系统性能与使用体验。 Optimizer Optimizer 是一款基于 .NET 开源(GPL-3.0 license)、功能强大的 …

从零开始: c#纯代码实现完整Json解析器的全过程及注释与自定义格式的支持实现

从零开始: c#纯代码实现完整Json解析器的全过程及注释与自定义格式的支持实现大家好!我们要深入探讨一个非常常用的技术:JSON反序列化。别小看这个技术,它可是现代编程中不可或缺的一部。JSON解析不仅仅是简单的数据…

MySQL 32 为什么还有kill不掉的语句?

MySQL有两个kill命令:kill query+线程id,表示终止该线程正在执行的语句;kill (connection)+线程id,表示断开这个线程的连接,如果线程有语句正在执行,会先停止正在执行的语句。有时候可能会遇到:使用了kill,却没…

Axure RP 9 Mac 交互原型设计 - 实践

Axure RP 9 Mac 交互原型设计 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monac…

Ceph IO流程分段上传(1)——InitMultipart - 指南

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …