我正在尝试使用多种类型实现附近的搜索Google网络服务,例如查询 type = department_store | grocery_or_supermarket
所以,我准备了一个如下所述的查询字符串,它在浏览器中工作正常
let query = "https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=28.965198333333333,77.98569833333333&radius=3218&type=department_store|grocery_or_supermarket&key=API_KEY"
当我尝试将其转换为如下所述的网址时,它会向我显示错误&#34;网址无效&#34; ,因为网址不接受查询字符串或(|)参数< / p>
guard let url = URL(string: query) else { return completion(.Failure("URL invalid")) }
虽然单一类型可以正常工作 的类型= department_store
let query = "https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=28.965198333333333,77.98569833333333&radius=3218&type=grocery_or_supermarket&key=API_KEY"
请建议,如何在附近的搜索网络服务中使用多种类型。
提前致谢。
答案 0 :(得分:1)
添加百分比编码:
guard let escapedQuery = query.addingPercentEncoding(withAllowedCharacters: CharacterSet.urlQueryAllowed),
let url = URL(string: escapedQuery) else { return completion(.Failure("URL invalid")) }