Jsonデータ取得時にNSDictionaryにNSNullがきた時の対処

2015.03.23 Monday 00:53
0
    Web APIを使ってJsonを取得するコードを書いていました。

    JSON → NSDictionaryと変換して、JSONデータを取得する方法を使っていたのですが、サーバ側のDBにNULLが入っているなどの理由でNSDictionaryに変換した時に値がNSNullになってしまうことがありました。


    swiftで下記のようにNSDictionaryから値を取得しようと思ったら、NSNullの時に落ちてしまいます。

    keyValue = dictionary["MyKey"] as Int!

    そのため、事前にNSNullかどうかのチェックするコードを追加してみました。


    var urlString = "http://hoge.com/?my_api_value=1"
    var url = NSURL(string: urlString)
    
    var task = NSURLSession.sharedSession().dataTaskWithURL(url!, 
                completionHandler:{data, response, error in
        if (data != nil) {
            var dictionary = NSJSONSerialization.JSONObjectWithData(data, options:
            NSJSONReadingOptions.MutableContainers, error: nil) as NSDictionary
    
            var keyValue: Int!
            if (dictionary["MyKey"]?.isKindOfClass(NSNull) == true){
                keyValue = -1
            } else {
                keyValue = dictionary["MyKey"] as Int!
            }
        }
    })
    
    task.resume()
    


    ネットでググっても、見当たらなかったのでブログに残しておきます。

    もしかして、みなさん、別の方法で回避しているのかな???
    他に良い方法があったら教えてください。

    category:通信関連 | by:こもcomments(0) | - | -
    Comment








       

    Calender
        123
    45678910
    11121314151617
    18192021222324
    252627282930 
    << June 2017 >>
    Sponsored Link
    Selected entry
    Category
    Archives
    Recent comment
    • NSUnknownKeyExceptionが出た時の回避方法
    • NSUnknownKeyExceptionが出た時の回避方法
      atsushi
    • NSUnknownKeyExceptionが出た時の回避方法
      kanejun
    • UITableViewCellに置いたボタンのイベント処理
      こも
    • UITableViewCellに置いたボタンのイベント処理
      かつお
    • NSUnknownKeyExceptionが出た時の回避方法
      こも
    • NSUnknownKeyExceptionが出た時の回避方法
       
    • iOS7のベータ版を入れてみた
      こも
    • iOS7のベータ版を入れてみた
      梅雨
    • iOS7のベータ版を入れてみた
      こも
    Sponsored Link
    Link
    Profile
    Search
    Others
    Mobile
    qrcode
    Powered
    無料ブログ作成サービス JUGEM