Swift:
การทำงานกับ JSON
วิธีการ:
Swift ทำให้การแยกวิเคราะห์ JSON เป็นเรื่องง่ายด้วยโปรโตคอล Codable
นี่คือวิธีที่คุณถอดรหัส JSON เป็นอ็อบเจกต์ Swift:
import Foundation
// กำหนดโมเดลที่อยู่ในรูปแบบของ Codable
struct User: Codable {
var name: String
var age: Int
}
// สตริง JSON
let jsonString = """
{
"name": "John Doe",
"age": 30
}
"""
// แปลงสตริง JSON เป็น Data
if let jsonData = jsonString.data(using: .utf8) {
// ถอดรหัสข้อมูล JSON เป็นอ็อบเจกต์ User
do {
let user = try JSONDecoder().decode(User.self, from: jsonData)
print("Name: \(user.name), Age: \(user.age)")
} catch {
print("ข้อผิดพลาดในการถอดรหัส JSON: \(error)")
}
}
ตัวอย่างผลลัพธ์:
Name: John Doe, Age: 30
การขุดลึก
JSON (JavaScript Object Notation) ได้รับความนิยมอย่างกว้างขวางตั้งแต่ต้นทศวรรษ 2000 หลังจากที่ Douglas Crockford ได้กำหนดข้อกำหนด มันได้แทนที่ XML สำหรับหลาย ๆ เคสการใช้งานเนื่องจากมันมีไวยากรณ์ที่ง่ายกว่าและประสิทธิภาพที่ดีกว่า ในขณะที่ Codable
ของ Swift เป็นที่นิยมสำหรับ JSON, ตัวเลือกรายการอื่น ๆ เช่น JSONSerialization
ยังมีอยู่สำหรับการจัดการกับประเภทที่ไม่เข้ากับมาตรฐานของ Codable ด้วยการทำงานภายใน, Codable
ทำให้การแยกและรวมข้อมูลเป็นไปอย่างราบรื่น
ดูเพิ่มเติม
- สำรวจเพิ่มเติมเกี่ยวกับ JSON และ Swift ในบล็อกอย่างเป็นทางการของ Swift: Swift.org
- ดูเอกสารของ
Codable
: Swift Codable - สำหรับโครงสร้าง JSON ที่ซับซ้อน, พิจารณาไลบรารีของบุคคลที่สาม เช่น SwiftyJSON ที่มีให้บริการที่ GitHub.