Swift URL有特殊字符和汉字初始化nil,导致崩溃

字数 56阅读 1218

一直没有注意,在String中包含特殊字符和汉字,会导致URL的init为nil,再上线前夕程序崩溃。才发现没有做。
写个扩展进行初始化。

import Foundation


extension URL{
    
    static func initPercent(string:String) -> URL
    {
        let urlwithPercentEscapes = string.addingPercentEncoding( withAllowedCharacters: .urlQueryAllowed)
        let url = URL.init(string: urlwithPercentEscapes!)
        return url!
    }
}

推荐阅读更多精彩内容