From 86839121f0e47b55dd9498225b00cbcdd90bf9bf Mon Sep 17 00:00:00 2001
From: wangxy <1481820854@qq.com>
Date: Wed, 7 May 2025 10:35:27 +0800
Subject: [PATCH] =?UTF-8?q?feat:ueky=E6=8B=94=E5=87=BA=E9=80=80=E5=87=BA?=
=?UTF-8?q?=E7=99=BB=E5=BD=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../main/resources/static/ruoyi/ukeylogin.js | 36 +++++++++++--------
1 file changed, 22 insertions(+), 14 deletions(-)
diff --git a/ruoyi-admin/src/main/resources/static/ruoyi/ukeylogin.js b/ruoyi-admin/src/main/resources/static/ruoyi/ukeylogin.js
index 15065cd0..f4dfbd6f 100644
--- a/ruoyi-admin/src/main/resources/static/ruoyi/ukeylogin.js
+++ b/ruoyi-admin/src/main/resources/static/ruoyi/ukeylogin.js
@@ -49,29 +49,37 @@ SetOnUsbKeyChangeCallBack(FillDeviceList);
$(function() {
- // 检测UKey状态
function checkUKey() {
+ const $ukeyStatus = $('#ukeyStatus');
+ const statusSpan = $ukeyStatus.find('span');
try {
- var ukey_id = $("#id_selected_cert_id").val();
+ // 重置状态显示
+ $ukeyStatus.show().removeClass('alert-info alert-success alert-danger');
+ // 尝试获取UKey ID
+ const ukey_id = $("#id_selected_cert_id").val();
if (!ukey_id) {
- $('#ukeyStatus').show().find('span').text('UKey插件未加载');
- return false;
- }
- if (ukey_id) {
- $('#ukeyStatus').show().removeClass('alert-info').addClass('alert-success')
- .find('span').html('检测到UKey已插入');
- return true;
- } else {
- $('#ukeyStatus').show().removeClass('alert-success').addClass('alert-info')
- .find('span').text('请插入您的UKey设备');
+ // UKey未检测到的情况
+ $ukeyStatus.addClass('alert-danger');
+ statusSpan.html('UKey插件未加载或UKey驱动未安装,点击下载');
return false;
}
+ // UKey检测成功
+ $ukeyStatus.addClass('alert-success');
+ statusSpan.html('检测到UKey已插入');
+ return true;
} catch (e) {
- $('#ukeyStatus').show().removeClass('alert-success').addClass('alert-danger')
- .find('span').html('UKey驱动未安装,点击下载');
+ // 异常处理
+ console.error('UKey检测异常:', e);
+ $ukeyStatus.addClass('alert-danger');
+ // 根据错误类型提供更精确的提示
+ const errorMsg = e instanceof SecurityError ?
+ '浏览器安全限制,请允许UKey插件运行' :
+ 'UKey驱动未安装,点击下载';
+ statusSpan.html(errorMsg);
return false;
}
}
+
// 每3秒检测一次
setInterval(checkUKey, 3000);
checkUKey();