my code on the client side looks like:
func getRequest() {
let server = appState.server + "endpoint"
let package = CustomObject(param1: val1, param2: val2)
guard let url = URL(string: server) else { return }
var urlRequest = URLRequest(url: url)
urlRequest.addValue("application/json", forHTTPHeaderField: "Content-Type")
urlRequest.addValue("application/json", forHTTPHeaderField: "Accept")
urlRequest.httpMethod = "GET"
guard let data = try? JSONEncoder().encode(package) else { return }
urlRequest.httpBody = data
let task = URLSession.shared.dataTask(with: urlRequest) {
(data, response, error) in
if let error = error {
return
}
guard let data = data else { return }
guard let dataString = String(data: data, encoding: String.Encoding.utf8) else { return }
let jsonData = Data(dataString.utf8)
DispatchQueue.main.async {
print("dataString is found and it's \(dataString)")
}
}
task.resume()
}
On the server side:
app.get('/endpoint', function (request, response) {
console.log("THIS SHOULD PRINT")
//do stuff with request.body
start()
response.send('GET request to the homepage')
})
For some reason, the GET endpoint isn't being reached, so nothing is printing. Not sure what I'm missing on the client side set up.