Sobes.tech
Junior — Middle

Описати процес преноса података са серверске стране преко мреже до корисничког интерфејса у вашем претходном пројекту.

sobes.tech АИ

Одговор од АИ

U mom prethodnom iOS projektu, proces prenosa podataka izgledao je ovako:

  1. Serverski deo (npr. REST API) generisao je JSON odgovor na zahtev klijenta.
  2. Na iOS aplikaciji, slan je HTTP zahtev ka serveru pomoću URLSession.
  3. Primljeni JSON dokument je deserializovan u modele podataka pomoću Codable.
  4. Nakon uspešnog parsiranja, podaci su preneti na sloj poslovne logike.
  5. Zatim je korisnički interfejs ažuriran, na primer, osvežavanjem UITableView ili SwiftUI View, da prikaže nove podatke.

Primer zahteva i obrade podataka:

struct User: Codable {
    let id: Int
    let name: String
}

func fetchUsers() {
    let url = URL(string: "https://api.example.com/users")!
    URLSession.shared.dataTask(with: url) { data, response, error in
        guard let data = data else { return }
        do {
            let users = try JSONDecoder().decode([User].self, from: data)
            DispatchQueue.main.async {
                // ažurirati UI sa korisnicima
            }
        } catch {
            print("Greška pri parsiranju: \(error)")
        }
    }.resume()
}