前言
在前端开发中,我们经常需要处理域名相关的问题。psl.js 是一个使用 JavaScript 实现的公共后缀列表(Public Suffix List)工具包,可以方便我们解析和处理域名。在本篇文章中,我会介绍如何使用 npm 包 psl.js 以及其常用的 API。
安装
使用 npm 安装 psl.js:
npm install psl
使用
导入 psl:
const psl = require('psl')
parse
使用 psl.parse(domain)
方法可以解析出一个域名的主域名和子域名。例如:
const { domain, subdomain } = psl.parse('www.example.com') console.log(domain) //=> 'example.com' console.log(subdomain) //=> 'www'
isValid
psl 也提供了检查一个域名是否合法的方法 psl.isValid(domain)
,这个方法会检查传入的字符串是否符合 DNS 约定。例如:
psl.isValid('abc.com') //=> true psl.isValid('abc') //=> false
get
使用 psl.get(domain)
方法可以解析出 TLD(Top-Level Domain)信息,这个方法也会返回主域名和子域名。例如:
-- -------------------- ---- ------- ----- - ------- ---------- --- - - ---------------------------- ------------------- ---- --------------- ---------------------- ---- ----- ---------------- ---- -------
Rules
psl 默认的公共后缀规则来自于 https://publicsuffix.org/,同时也内置了一些特殊规则。如果我们需要自定义后缀规则,可以使用 psl.Rules.load(list)
方法加载列表,其中 list 是一个数组。例如:
const myRules = ['com.example'] psl.Rules.load(myRules)
cache
为了提高解析效率,psl 默认开启缓存。可以使用 psl.cache.clear()
方法清除缓存。例如:
psl.cache.clear()
总结
在本篇文章中,我们介绍了 npm 包 psl.js 的安装和使用方法,并详细讲解了其常用的 API。希望这篇文章可以帮助你更好地处理域名相关的问题。
参考文献
- GitHub - lupoDharkael/psl: JavaScript domain name parser based on the Public Suffix List
- Public Suffix List
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60056cc381e8991b448e6429