diff --git a/pom.xml b/pom.xml
index 8269c8de..825887fb 100644
--- a/pom.xml
+++ b/pom.xml
@@ -21,7 +21,7 @@
1.13.0
2.1.0
1.2.27
- 1.21
+ 7.32.0
2.3.3
3.0.0
1.4.7
@@ -134,9 +134,9 @@
- eu.bitwalker
- UserAgentUtils
- ${bitwalker.version}
+ nl.basjes.parse.useragent
+ yauaa
+ ${yauaa.version}
diff --git a/ruoyi-common/pom.xml b/ruoyi-common/pom.xml
index 7dfcaf0f..7847bed8 100644
--- a/ruoyi-common/pom.xml
+++ b/ruoyi-common/pom.xml
@@ -83,10 +83,10 @@
poi-ooxml
-
+
- org.yaml
- snakeyaml
+ nl.basjes.parse.useragent
+ yauaa
diff --git a/ruoyi-framework/pom.xml b/ruoyi-framework/pom.xml
index c0c85220..5abfd8c1 100644
--- a/ruoyi-framework/pom.xml
+++ b/ruoyi-framework/pom.xml
@@ -59,12 +59,6 @@
thymeleaf-extras-shiro
-
-
- eu.bitwalker
- UserAgentUtils
-
-
com.github.oshi
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/manager/factory/AsyncFactory.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/manager/factory/AsyncFactory.java
index f125664c..e73af79e 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/manager/factory/AsyncFactory.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/manager/factory/AsyncFactory.java
@@ -9,6 +9,7 @@ import com.ruoyi.common.utils.LogUtils;
import com.ruoyi.common.utils.ServletUtils;
import com.ruoyi.common.utils.ShiroUtils;
import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.http.UserAgentUtils;
import com.ruoyi.common.utils.spring.SpringUtils;
import com.ruoyi.framework.shiro.session.OnlineSession;
import com.ruoyi.system.domain.SysLogininfor;
@@ -17,7 +18,6 @@ import com.ruoyi.system.domain.SysUserOnline;
import com.ruoyi.system.service.ISysOperLogService;
import com.ruoyi.system.service.ISysUserOnlineService;
import com.ruoyi.system.service.impl.SysLogininforServiceImpl;
-import eu.bitwalker.useragentutils.UserAgent;
/**
* 异步工厂(产生任务用)
@@ -91,7 +91,7 @@ public class AsyncFactory
*/
public static TimerTask recordLogininfor(final String username, final String status, final String message, final Object... args)
{
- final UserAgent userAgent = UserAgent.parseUserAgentString(ServletUtils.getRequest().getHeader("User-Agent"));
+ final String userAgent = ServletUtils.getRequest().getHeader("User-Agent");
final String ip = ShiroUtils.getIp();
return new TimerTask()
{
@@ -108,9 +108,9 @@ public class AsyncFactory
// 打印信息到日志
sys_user_logger.info(s.toString(), args);
// 获取客户端操作系统
- String os = userAgent.getOperatingSystem().getName();
+ String os = UserAgentUtils.getOperatingSystem(userAgent);
// 获取客户端浏览器
- String browser = userAgent.getBrowser().getName();
+ String browser = UserAgentUtils.getBrowser(userAgent);
// 封装对象
SysLogininfor logininfor = new SysLogininfor();
logininfor.setLoginName(username);
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/shiro/session/OnlineSessionFactory.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/shiro/session/OnlineSessionFactory.java
index f1e5a3ee..5043664d 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/shiro/session/OnlineSessionFactory.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/shiro/session/OnlineSessionFactory.java
@@ -7,7 +7,7 @@ import org.apache.shiro.session.mgt.SessionFactory;
import org.apache.shiro.web.session.mgt.WebSessionContext;
import org.springframework.stereotype.Component;
import com.ruoyi.common.utils.IpUtils;
-import eu.bitwalker.useragentutils.UserAgent;
+import com.ruoyi.common.utils.http.UserAgentUtils;
/**
* 自定义sessionFactory会话
@@ -27,11 +27,11 @@ public class OnlineSessionFactory implements SessionFactory
HttpServletRequest request = (HttpServletRequest) sessionContext.getServletRequest();
if (request != null)
{
- UserAgent userAgent = UserAgent.parseUserAgentString(request.getHeader("User-Agent"));
+ String userAgent = request.getHeader("User-Agent");
// 获取客户端操作系统
- String os = userAgent.getOperatingSystem().getName();
+ String os = UserAgentUtils.getOperatingSystem(userAgent);
// 获取客户端浏览器
- String browser = userAgent.getBrowser().getName();
+ String browser = UserAgentUtils.getBrowser(userAgent);
session.setHost(IpUtils.getIpAddr(request));
session.setBrowser(browser);
session.setOs(os);