iOS developer essential skills/Modern Concurency
Modern Concurrency Deep Dive(3)
jgkim1008
2024. 11. 16. 23:51
신규 URLSession API
- 기존 completion으로 복잡함으로 간단하게 변경할수 있다.
- Completion 누락등 휴먼 에러도 쉽게 찾아낼수 있다.
func fetch() try await -> User? {
do {
let url = URL(string: "www.test.com")
let response = try await URLSession.shared.data(from: url)
guard (response as? HTTPURLResponse)?.stateCode.contains(200..<299) else {
return nil
}
let user = try JSONDecoder().decode(User.self, from: data)
return user
} catch let error {
print(error)
throw error
}
}