我需要编写一个实用方法,该方法将获取一个 url 并检查给定的 url 是否有效?
URL 可以是任何带有/不带协议的东西,例如 http、https 或 with 可以包含相对 url,例如 domain 是example
并且 url 是“abc.com”,那么它就是一个相对 URL。它也可以是无效的 url 并且可以包含简单的字符串。
我也列出了列入白名单的 URL,并且可以更改运行时youtube.com
等facebook.com
。
我如何检查给定的网址在我的情况下是否有效,我正在做的一些基本检查如下:-
String url = "http://youtube.com";
if(!StringUtil.isEmpty(url))
{
if (url.startsWith("http:") || pathToImage.startsWith("https://")) {
// check if url is from whitlist domains
} else {
// do nothing, url is not internal domain.
}
}
http
现在我的问题是如何正确地从位于or之后的 URL 中提取域名https
。
注意:-我正在使用 apache StringUtils 并且很可能 url 可以像https://absdsbsb
or https://anmds.txt
。还让我知道它是否适合正则表达式匹配?