0

我想用 NSNull 处理 SwiftyJSON 返回值,但我不知道怎么做?如果达到超时,我会从 SwiftyJSON 中返回一个 JSON 枚举object : NSNull()

这是我的代码:

    func ping(url:String) -> JSON {

    var startTime = NSDate.timeIntervalSinceReferenceDate()

    var waiting = true
    var JSONresponse:JSON!

    Alamofire
        .request(.GET, myURL)
        .responseJSON {
            (request, response, data, error) -> Void in

            JSONresponse = JSON(object: data!)
            waiting = false
    }

    while (waiting) {
        NSRunLoop.currentRunLoop().runMode(NSDefaultRunLoopMode, beforeDate: NSDate())
        usleep(10)

        var timeout:Double = 10.0
        var currentTime = NSDate.timeIntervalSinceReferenceDate()
        var elapsedTime: NSTimeInterval = currentTime - startTime

        if (elapsedTime > timeout)
        {
            waiting = false
            //JSONresponse returns NSNull() on timeout
            JSONresponse = JSON(object: NSNull())
        }
    }

  return JSONresponse
}

如何在 if 子句中解析返回值?如果返回值来自NSNull我想要生成错误消息的类型。

谢谢!

4

0 回答 0