개발 - iOS SwiftUI
iOS SwiftUI HTTP GET 요청 후 JSON 응답 파싱 예제
개미v
2023. 10. 16. 19:25
반응형
SwiftUI에서 HTTP GET 요청후 JSON 응답 처리하는 기본 예제 입니다.
가독성 좋게 옵셔널은 Unwrapp 하였습니다.
하면 할 수록 Swift 문법이 참 별로네요 ㅋㅋ
import SwiftUI
import WebKit
struct IntroView: View {
var body: some View {
VStack {
}
.onAppear {
startMain()
}
}
func startMain() {
// 버전 확인
let session = URLSession.shared
// HTTP 요청
let url = URL(string: Define.serverUrl + "/system/selectVersion.ajax")!
var request = URLRequest(url: url)
request.httpMethod = "GET"
// 요청 결과 처리
let task = session.dataTask(with: request) {data, response, error in
// HTTP 응답코드가 400번대, 500번대의 경우 리턴
let httpResponse = response as! HTTPURLResponse
if httpResponse.statusCode >= 400 && httpResponse.statusCode <= 599 {
print(httpResponse.statusCode)
}
// HTTP 결과
let jsonDecoder = JSONDecoder()
let httpResponseJson = try! jsonDecoder.decode(HttpResponseJson.self, from: data!)
print(httpResponseJson.code)
print(httpResponseJson.data)
}
task.resume()
}
}
// HTTP 응답 JSON에 맵핑되는 구조체
struct HttpResponseJson: Decodable {
let code: String
let data: String
}
반응형