How can I build a URL with query parameters containing multiple values for the same key in Swift?

All you need is URLComponents (or NSURLComponents in Obj-C). The basic idea is to create a bunch of query items for your id’s. Here’s code you can paste into a playground:

import Foundation
import XCPlayground

let queryItems = [URLQueryItem(name: "id", value: "1"), URLQueryItem(name: "id", value: "2")]
var urlComps = URLComponents(string: "www.apple.com/help")!
urlComps.queryItems = queryItems
let result = urlComps.url!
print(result)

You should see an output of

www.apple.com/help?id=1&id=2

Leave a Comment