Junior — Middle
Опишете процеса на пренос на данни от сървърната част през мрежата до потребителския интерфейс във вашия предишен проект.
sobes.tech AI
Отговор от AI
В предишния ми iOS проект процесът на прехвърляне на данни изглеждаше по следния начин:
- Сървърната част (например REST API) създаваше JSON отговор на заявката на клиента.
- В iOS приложението се изпращаше HTTP заявка към сървъра с помощта на URLSession.
- Полученият JSON документ се десериализираше в модели данни с помощта на Codable.
- След успешен парсинг, данните се прехвърляха към слоя за бизнес логика.
- След това, потребителският интерфейс се актуализираше, например чрез обновяване на UITableView или SwiftUI View, за да се покаже новите данни.
Пример за заявка и обработка на данни:
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 {
// обновяване на UI с users
}
} catch {
print("Грешка при парсване: \(error)")
}
}.resume()
}