如何使用swift 4.1获取url参数的值

Reh*_*Meo 2 json object ios swift swift4.1

我正在尝试获取 url 的参数,并且尝试仅获取日期而不是 URL 的时间。

\n
http://aa.no-ip.biz:8001/hf_tracker/api/history.php?accesskey=12345&Vehilce=1618&FromDate=2018-05-10 13:11&ToDate=2018-05-14 12:11\n
Run Code Online (Sandbox Code Playgroud)\n

代码:

\n
extension URL {\n    func valueOf(_ queryParameterName: String) -> String? { \n        guard let url = URLComponents(string: self.absoluteString) else { \n              return nil \n        } \n\n        return url.queryItems?.first(where: { $0.name == queryParameterName})?.value \n    } \n}\n    \n    let newURL = URL(string: "assetlinkasia.no-ip.biz:8001/hf_tracker/api/\xe2\x80\xa6)! \n    newURL.valueOf("toDate") \n    newURL.valueOf("fromDate") \n
Run Code Online (Sandbox Code Playgroud)\n

我怎样才能只获取日期而不获取时间?

\n

PPL*_*PPL 5

这就是你可以做到的方法,

您的网址扩展在这里,从这里

extension URL {
    func valueOf(_ queryParamaterName: String) -> String? {
        guard let url = URLComponents(string: self.absoluteString) else { return nil }
        return url.queryItems?.first(where: { $0.name == queryParamaterName })?.value
    }
}
Run Code Online (Sandbox Code Playgroud)

你的代码放在这里,

let string = "http://aa.no-ip.biz:8001/hf_tracker/api/history.php?accesskey=12345&Vehilce=1618&FromDate=2018-05-10 13:11&ToDate=2018-05-14 12:11"
let test = string.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)
let url = URL(string: test!)!
let fromDate = url.valueOf("FromDate")
let toDate = url.valueOf("ToDate")

let date1 = fromDate?.components(separatedBy: " ").first
print(date1)

let date2 = toDate?.components(separatedBy: " ").first
print(date2 )
Run Code Online (Sandbox Code Playgroud)

输出如下,

2018-05-10
2018-05-14
Run Code Online (Sandbox Code Playgroud)