Swift 4 JSON

在 Swift 之中,JSON (JavaScript Object Notation) 的型別為 [String: Any]

也就是一個 Dictionary 的概念,以一組 Key 對應一組 Value。

大多數會碰到 JSON 格式是在做網路溝通時,

使用 JSON 格式並 encode 成 Data 的型態在傳輸資料。

Swift 3 以前

我們從 URLSession.shared.dataTask 的 handler 之中,

會得到 data、response error,其中的 data 會使用下面的方式才轉換成 JSON:

接著我們再來對 JSON 的 Key 和 Value 來進行拆解:

而巢狀式的 JSON 格式,寫起來的 code 就會越長,進而衍生出 SwiftyJSON,有興趣的可以自行看一下。

Swift 4

那 Swift 4 做了哪種改變呢?

在 Foundation 裡頭,增加了 Encoder/Decoder 相關的內容,

而這邊先以 JSON 作為主要的內容。

以 User 作為例子:

其中,Codable 是指 EncodableDecodable

若你只需要做 data parse 的話,也可以僅宣告 Decodable。

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s