Я студент и пытаюсь получить данные Json с сервера Http, а после этого сохранить их, используя UserDefaults
Я видел несколько примеров, и этот код, который я сделал, казалось, имел смысл, хотя он не работал
Это моя структура, которую я использую для декодирования данных json
struct UserLogged : Decodable {
var token: String
var userId: String
}
И этот код я пытаюсь использовать
guard let baseUrl = URL(string: "http://LOCALHOST:8080/auth/login") else {
return
}
var request = URLRequest(url: baseUrl);
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
request.httpMethod = "POST";
request.httpBody = jsonData;
let task = URLSession.shared.dataTask(with: request) { data, response, error in
if let data = data {
print(data)
do {
let json = try JSONSerialization.jsonObject(with: data, options: [])
print(json)
if let user : UserLogged = try JSONDecoder().decode(UserLogged.self, from: data) {
UserDefaults.standard.set(user, forKey: "userLogged")
}
} catch {
print(error)
}
}
}.resume()