Swift Url编码
func generateUrlWithParams(_ parameters:[String: Any]) -> String {
//默认URL
var urlStr = "demo://"
var flag = true
let generalDelimitersToEncode = ":#[]@" // does not include "?" or "/" due to RFC 3986 - Section 3.4
let subDelimitersToEncode = "!$&'()*+,;="
var allowedCharacterSet = CharacterSet.urlQueryAllowed
allowedCharacterSet.remove(charactersIn: "\(generalDelimitersToEncode)\(subDelimitersToEncode)")
for (key,value) in parameters {
var anyValue: Any = value
if let value = value as? String{
anyValue = value.addingPercentEncoding(withAllowedCharacters: allowedCharacterSet) ?? ""
}
if flag{
flag = false
urlStr += "?" + key + "=\(anyValue)"
}else{
urlStr += "&" + key + "=\(anyValue)"
}
}
return urlStr
}
本文标题:Swift Url编码
本文链接:https://www.haomeiwen.com/subject/qxjelltx.html
网友评论