我使用URLs
從互聯網上下載,所以我不知道他們的格式提前,他們是動態的。如何確定URL是否應該被編碼?
如何知道在運行時我應該編碼URL
?
// `url` is retrieved from the Internet at run time
// When should I call following line?
let urlString = url!.stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URLFragmentAllowedCharacterSet())
如果它已經編碼,調用stringByAddingPercentEncodingWithAllowedCharacters
會使URL
無效。
你可以檢查字符串,並作出一個廣泛的假設,如果它包含'%'字符,它已經被編碼? – Flexicoder
URL必須始終正確編碼。嚴格來說,沒有像未經編碼的URL那樣的東西。您可以使用輔助類「NSURLComponents」驗證URL是否有效。 – CouchDeveloper
@CouchDeveloper它確實發生在非英文網址 –