[swift] 스위프트 아폴로를 사용한 데이터 변환 방법
스위프트에서 외부 API나 서버에서 받아온 데이터를 다루는 경우 자주 직렬화와 역직렬화를 해야할 때가 있습니다. 그럴 때에 사용하기 좋은 도구 중 하나가 아폴로(Apollo)입니다. 아폴로는 그래프QL(GraphQL)을 사용하여 데이터를 쉽게 다룰 수 있도록 도와줍니다.
아폴로 설치하기
스위프트에서 아폴로를 사용하려면 먼저 아폴로를 설치해야 합니다. 아래의 명령어를 사용하여 CocoaPods을 통해 아폴로를 설치할 수 있습니다.
pod 'Apollo'
설치가 완료되면 import Apollo
를 통해 아폴로를 프로젝트에 가져올 수 있습니다.
데이터 변환하기
아폴로는 자동으로 데이터를 직렬화하고 역직렬화하는 기능을 제공합니다. 아래는 아폴로를 사용하여 데이터를 변환하는 예제입니다.
import Apollo
struct PostData: Codable {
let id: String
let title: String
let content: String
}
let jsonString = """
{
"id": "1",
"title": "Hello, World!",
"content": "This is a sample post."
}
"""
if let jsonData = jsonString.data(using: .utf8) {
do {
let postData = try JSONDecoder().decode(PostData.self, from: jsonData)
print(postData)
} catch {
print("Error decoding JSON: \(error)")
}
}
위의 예제는 JSON 문자열을 PostData
라는 구조체로 변환하는 과정을 보여줍니다. 이렇게 변환된 데이터는 postData
상수에 저장되어 출력됩니다.
요약
스위프트 아폴로를 사용하면 외부 API나 서버의 데이터를 효율적으로 다룰 수 있습니다. 이를 위해 아폴로를 설치한 후 데이터를 직렬화하거나 역직렬화할 수 있습니다. 예제 코드를 통해 실제 사용 방법을 이해할 수 있습니다.
더 자세한 내용은 아폴로 공식 문서를 참조하시기 바랍니다.