json เป็นข้อมูลที่นิยมใช้เป็น api เนื่องด้วยเบาและใช้งานได้สะดวก ลักษณะข้อมูลเป็นดังนี้ครับ
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
{ "blogs": [ { "needspassword": true, "id": 73, "url": "http://test.com/", "name": "Bloxus test" }, { "needspassword": false, "id": 74, "url": "http://test2.com/", "name": "Manila Test" } ], "stat": "ok" } |
สมมติว่าเราได้ส่งค่า request ได้รับข้อมูลเป็น json กลับมาเราจะใช้ NSJSONSerialization เก็บค่าของ json object โปรแกรมตัวอย่างจะเป็นดังนี้
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
var names = [String]() do { let json = try NSJSONSerialization.JSONObjectWithData(data, options: .AllowFragments) if let blogs = json["blogs"] as? [[String: AnyObject]] { for blog in blogs { if let name = blog["name"] as? String { names.append(name) } } } } catch { print("error serializing JSON: \(error)") } print(names) // ["Bloxus test", "Manila Test"] |
เราก็จะสามารถดึงข้อมูลมาใช้ได้ตามต้องการโดยการวนลูปเก็บข้อมูลแบบ array และเก็บผลด้วยการดึงข้อมูลแบบ dictionary นะครับ หรืออีกวิธีง่ายๆคือการหา library มาใช้ครับ ลองดูที่ https://github.com/SwiftyJSON/SwiftyJSON ขอบคุณครับ
0