我需要确保用户输入的 URL 到达它应该去的地方。我的意思是如果用户输入“http://google.com/blablabla”或“http://google123.com/blablabla”。我需要弄清楚第二个网址不正确,因为它不会打开谷歌的网站。 Swift 中有一些方法可以做到这一点吗?还是我只需要检查 URL 是否包含“http://google.com”?
最佳答案
<强>1。网址格式错误
要验证 URL 本身是否格式错误,请让操作系统执行此操作: (检查 URL 是否包含所需的所有部分,即 scheme 和主机)
if let url = URL(string: rawStringInput),
let _ = url.scheme,
let _ = url.host {
// rawStringInput is well formed
}
然后您可以从 URL 中查询各种信息,例如方案 (http)、主机 (google.com)、路径 ( blablabla)、片段、端口等。
<强>2。有效网址
如果您想知道该 URL 是否可达(即远程服务器响应它),您实际上需要执行该请求。
关于ios - 检查域名的有效性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31423837/