我正在尝试使用 NSURL 验证 url,但它对我不起作用。
Example:
func verifyUrl (urlString: String?) -> Bool {
if let urlString = urlString {
if let _ = NSURL(string: urlString) {
return true
}
}
return false
}
let ex1 = "http://google.com"
let ex2 = "http://stackoverflow.com"
let ex3 = "Escolas" // Not a valid url, I think
verifyUrl(ex1) // true
verifyUrl(ex2) // true
verifyUrl(ex3) // true
我认为“Escolas”无法返回 true,我做错了什么?
我认为你缺少的是打开网址UIApplication.sharedApplication().canOpenURL(url)
例如,将您的代码更改为以下代码:
func verifyUrl (urlString: String?) -> Bool {
if let urlString = urlString {
if let url = NSURL(string: urlString) {
return UIApplication.sharedApplication().canOpenURL(url)
}
}
return false
}
verifyUrl("escola") // false
verifyUrl("http://wwww.google.com") // true
的构造函数NSURL
根据您的想法,不验证网址Apple https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/NSURL_Class/#//apple_ref/doc/uid/20000301-SW12:
该方法期望URLString
仅包含格式正确的 URL 中允许的字符。所有其他字符必须正确进行百分比转义。任何百分比转义字符均使用 UTF-8 编码进行解释
我希望这对你有帮助。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)