Spotify Returns NSDictionary 无效

Spotify Returns Invalid NSDictionary

我正在调用 Spotify API 方法来检索用户保存的曲目。在解析 return 数据时,我调用

let jsonObject = try NSJSONSerialization.JSONObjectWithData(dataFromNetwork, options: []) as! NSDictionary

当我打印出结果时,我得到:

{
href = "https://api.spotify.com/v1/me/tracks?offset=0&limit=20";
items =     (
            {
        "added_at" = "2016-04-17T18:35:07Z";
        track =             {
            album =                 {
                "album_type" = album;
                "available_markets" =   
    ....
}

有些键不是字符串。因此,当我尝试在容器中导航时,出现 returns 错误。

我首先导航到曲目列表:

let tracks = jsonObject["items"] as! [NSDictionary]

此代码不会产生错误。但是,当我遍历数组时,我尝试访问轨道的 "name" 键:

let title = track["name"] as! String

此代码使程序崩溃,当我查看 JSON:

name = <redacted>

键和值都没有双引号。

这条线有点太绝对了:

let title = track["name"] as! String

将其更改为“if let”语句:

if let title = track["name"] as? String
{
   // do something if it's a valid title