JavaScript 中如何在考虑 .com.cn 的情况下获取一个 URL 的二级域名?

2022-12-15 10:08:43 +08:00
 mercury233

将一级域名理解为 .com 或者 .com.cn 或者 .co.uk 等等

let addr1 = new URL("https://www.example.com/blahblah");
let addr2 = new URL("https://example.com/blahblah");
let addr3 = new URL("https://test.example.com/blahblah");
let addr4 = new URL("https://another.test.example.com/blahblah");

都需要取到二级域名 example.com

let addr1 = new URL("https://www.example.com.cn/blahblah");
let addr2 = new URL("https://example.com.cn/blahblah");
let addr3 = new URL("https://test.example.com.cn/blahblah");
let addr4 = new URL("https://another.test.example.com.cn/blahblah");

都需要取到二级域名 example.com.cn

766 次点击
所在节点    问与答
2 条回复
yuzo555
2022-12-15 10:18:22 +08:00
jucelin
2022-12-15 10:36:44 +08:00
理论上提取不到的,给几个特殊的:
www.net.cn
edu.cn

当然也客户忽略这些,可以用列举法,如 https://whois.aliyun.com/js/domainparser.js

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/902637

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX