检查域名的有效性

Ste*_*eve 1 validation url ios swift

我需要确保用户输入的 URL 到达其应该到达的位置。我的意思是如果用户输入“ http://google.com/blablabla ”或“ http://google123.com/blablabla ”。我需要弄清楚第二个网址不正确,因为它不会打开谷歌的网站。Swift 中有一些方法可以做到这一点吗?或者我只需要检查 URL 是否包含“ http://google.com ”?

Swi*_*ect 5

1. 网址格式错误

要验证 URL 本身是否格式错误,请让操作系统执行此操作:(检查 URL 是否包含其所需的所有部分,即方案主机)

if let url = URL(string: rawStringInput),
    let _ = url.scheme,
    let _ = url.host {
    // rawStringInput is well formed
}
Run Code Online (Sandbox Code Playgroud)

然后,您可以从 URL 中查询各种信息,例如方案(http)、主机(google.com )、路径(blablabla)、片段、端口等。

2. 有效网址

如果你想知道该 URL 是否可达(即远程服务器是否响应它),你实际上需要执行该请求。