XZ_iOS 之 替换 url中的参数的值
程序员文章站
2022-03-10 21:48:44
...
需求如下:
用户登录之后,需要刷新web页,这时候需要替换UserId和time的值。
URL如下:
http://***?time=***&appname=***&value=***&userId=**
直接获取链接的query值,修改即可,代码如下:
/// 修改 query 中参数的值
func changeValue(webUrl: String) -> URL {
guard let url = NSURL(string: webUrl), let urlComponents = NSURLComponents(url: url as URL, resolvingAgainstBaseURL: false) else
{ return NSURL(string: webUrl)! as URL }
for i in 0..<(urlComponents.queryItems?.count ?? 0) {
if urlComponents.queryItems?[i].name == "userId" {
urlComponents.queryItems?[i].value = User.userId
}
let timeStr = "\(Date().nowTimeinterval())"
if urlComponents.queryItems?[i].name == "time" {
urlComponents.queryItems?[i].value = timeStr
}
if urlComponents.queryItems?[i].name == "value" {
urlComponents.queryItems?[i].value = "value"
}
}
return urlComponents.url!
print("--------webUrl:", webUrl, "urlComponents:", urlComponents)
}
其中,urlComponents.url! 就是修改了这些参数之后的值。time=***&appname=***&value=***&userId=**
urlComponents.queryItems 是[{"time":"***"}, {"appname":"***"},{"value":"***"},{"userId":"***"}]
上一篇: js 获取当前链接中的参数内容
下一篇: 7-32 说反话-加强版 (20 分)