diff --git a/CHANGELOG.md b/CHANGELOG.md index 3a2dd7879..b73aac692 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,9 +2,11 @@ # 🚀Changelog ------------------------------------------------------------------------------------------------------------- -# 5.8.34(2024-11-06) +# 5.8.34(2024-11-12) ### 🐣新特性 +* 【http 】 增加Windows微信浏览器识别(issue#IB3SJF@Gitee) + ### 🐞Bug修复 * 【core 】 修复DateUtil.rangeToList中step小于等于0时无限循环问题(issue#3783@Github) diff --git a/hutool-http/src/main/java/cn/hutool/http/useragent/Browser.java b/hutool-http/src/main/java/cn/hutool/http/useragent/Browser.java index 3eef7862b..e6f4d7b9a 100755 --- a/hutool-http/src/main/java/cn/hutool/http/useragent/Browser.java +++ b/hutool-http/src/main/java/cn/hutool/http/useragent/Browser.java @@ -31,6 +31,8 @@ public class Browser extends UserAgentInfo { // 部分特殊浏览器是基于安卓、Iphone等的,需要优先判断 // 企业微信 企业微信使用微信浏览器内核,会包含 MicroMessenger 所以要放在前面 new Browser("wxwork", "wxwork", "wxwork\\/([\\d\\w\\.\\-]+)"), + // issue#IB3SJF 微信电脑端 + new Browser("WindowsWechat", "WindowsWechat", "MicroMessenger" + Other_Version), // 微信 new Browser("MicroMessenger", "MicroMessenger", Other_Version), // 微信小程序 diff --git a/hutool-http/src/test/java/cn/hutool/http/useragent/IssueIB3SJFTest.java b/hutool-http/src/test/java/cn/hutool/http/useragent/IssueIB3SJFTest.java new file mode 100644 index 000000000..7af4c91e7 --- /dev/null +++ b/hutool-http/src/test/java/cn/hutool/http/useragent/IssueIB3SJFTest.java @@ -0,0 +1,16 @@ +package cn.hutool.http.useragent; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +public class IssueIB3SJFTest { + @Test + void isMobileTest() { + String str="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36 NetType/WIFI " + + "MicroMessenger/7.0.20.1781(0x6700143B) WindowsWechat(0x63090c11) XWEB/11275 Flue"; + UserAgent ua = UserAgentUtil.parse(str); + + Assertions.assertFalse(ua.isMobile()); + Assertions.assertEquals("7.0.20.1781", ua.getBrowser().getVersion(str)); + } +}