http代理优化,解决多个主域名存在上下级关系时,域名映射不能正常使用的问题
This commit is contained in:
+4
-3
@@ -401,11 +401,12 @@ public class ProxyUtil {
|
|||||||
* 通过完整域名获取域名id
|
* 通过完整域名获取域名id
|
||||||
*/
|
*/
|
||||||
public static Integer getDomainNameIdByFullDomain(String fullDomain) {
|
public static Integer getDomainNameIdByFullDomain(String fullDomain) {
|
||||||
List<String> domains = domainToDomainNameIdMap.keySet().stream().filter(item -> fullDomain.endsWith(item)).collect(Collectors.toList());
|
List<String> domains = domainToDomainNameIdMap.keySet().stream().sorted((a,b) -> b.length() - a.length()).filter(item -> fullDomain.endsWith(item)).collect(Collectors.toList());
|
||||||
// 不存在 或者 有多条记录,返回null
|
// 不存在,返回null
|
||||||
if (CollectionUtil.isEmpty(domains) || domains.size() > 1) {
|
if (CollectionUtil.isEmpty(domains)) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
// 优先匹配最长的域名,默认取第一个,后续思考如何优化
|
||||||
return getDomainNameIdByDomain(domains.get(0));
|
return getDomainNameIdByDomain(domains.get(0));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user