Junior — Middle
¿Cómo se implementa la interacción en red en su proyecto?
sobes.tech AI
Respuesta de la IA
En mi proyecto de iOS, la interacción en red se implementa utilizando URLSession, que proporciona una API para realizar solicitudes HTTP.
Para mayor comodidad y reutilización, creé una capa de red con abstracción que maneja la creación de solicitudes, el procesamiento de respuestas y errores. También se utiliza Codable para analizar JSON.
Ejemplo de una solicitud simple:
func fetchUsers(completion: @escaping ([User]?, Error?) -> Void) {
let url = URL(string: "https://api.example.com/users")!
URLSession.shared.dataTask(with: url) { data, response, error in
guard let data = data, error == nil else {
completion(nil, error)
return
}
do {
let users = try JSONDecoder().decode([User].self, from: data)
completion(users, nil)
} catch {
completion(nil, error)
}
}.resume()
}
Para tareas más complejas, se utilizan bibliotecas de terceros, como Alamofire, para facilitar la construcción de solicitudes y el procesamiento de respuestas.