Skip to content

Latest commit

 

History

History
19 lines (19 loc) · 599 Bytes

Working-with-URLS.MD

File metadata and controls

19 lines (19 loc) · 599 Bytes

Convert a dictionary of parameters into a URL-encoded query string:

func queryStringFromParams(params: [String: String], includingLeadingQueryIndicator: Bool = true) -> String? {
    if count(params) == 0 {
        return ""
    }
    var queryItems = map(params) { NSURLQueryItem(name:$0, value:$1) }
    let components = NSURLComponents()
    components.queryItems = queryItems
    var queryString = components.percentEncodedQuery
    if let qs = queryString {
        if includingLeadingQueryIndicator {
            return "?\(qs)"
        }
        return qs
    }
    return nil
}