在Swift中发送带有参数(解析服务器API)的GET请求

在Swift中发送带有参数(解析服务器API)的GET请求,swift,networking,Swift,Networking,这是卷发 curl -X GET \ -H "X-Parse-Application-Id: XXXX" \ -H "X-Parse-REST-API-Key: XXXX" \ -G \ --data-urlencode "where={\"Area\":\"Vesu\"}" \ https://parseapi.back4app.com/classes/RESTAURANT 如何通过URLSession发送带有where类型参数的GET请求?您需要对查询字符串进行编码,然后创建一个URLEQ

这是卷发

curl -X GET \
-H "X-Parse-Application-Id: XXXX" \
-H "X-Parse-REST-API-Key: XXXX" \
-G \
--data-urlencode "where={\"Area\":\"Vesu\"}" \
https://parseapi.back4app.com/classes/RESTAURANT

如何通过URLSession发送带有where类型参数的GET请求?

您需要对查询字符串进行编码,然后创建一个
URLEQUEST
,其中包含标题和包含基本URL和查询的URL。最后,您需要调用
dataTask
来执行请求

let baseUrl = "https://parseapi.back4app.com/classes/RESTAURANT"
guard let queryParameters = "where={\"Area\":\"Vesu\"}".addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed) else {return}
guard let url = URL(string: baseUrl+"?"+queryParameters) else {return}
var urlRequest = URLRequest(url: url)
urlRequest.allHTTPHeaderFields = ["X-Parse-Application-Id":"XXXX", "X-Parse-REST-API-Key":"XXXX"]
URLSession.shared.dataTask(with: urlRequest, completionHandler: { data, response, error in
    guard error == nil else {
        print(error!); return
    }
    //handle data and/or response
}).resume()