2016-11-17 91 views
2

在解析文档中,我们可以在Swift中找到这个会话错误处理。解析错误处理swift 3

// Swift 
class ParseErrorHandlingController { 
    class func handleParseError(error: NSError) { 
    if error.domain != PFParseErrorDomain { 
     return 
    } 

    switch (error.code) { 
    case kPFErrorInvalidSessionToken: 
     handleInvalidSessionTokenError() 

    ... // Other Parse API Errors that you want to explicitly handle. 
    } 

    private class func handleInvalidSessionTokenError() { 

    } 
} 

// In all API requests, call the global error handler, e.g. 
let query = PFQuery(className: "Object") 
query.findObjectsInBackgroundWithBlock { (objects: [AnyObject]!, error: NSError!) -> Void in 
    if error == nil { 
    // Query Succeeded - continue your app logic here. 
    } else { 
    // Query Failed - handle an error. 
    ParseErrorHandlingController.handleParseError(error) 
    } 
} 

有人可以帮我做到迅速3吗?

直到现在我也做了以下

import Foundation 
import Parse 

class ParseErrorHandlingController { 
    class func handleParseError(error: NSError) { 
     if error.domain != PFParseErrorDomain { 
      return 
     } 

     switch (error.code) { 
     case PFErrorCode.errorInvalidSessionToken.rawValue: 
      handleInvalidSessionTokenError() //error here again. 

      // Other Parse API Errors that you want to explicitly handle. 
     } 


    } 
    func handleInvalidSessionTokenError() { 
     PFUser.logOutInBackground { (error) -> Void in 
      if error == nil { 
       likesOfArray.removeAll() 

      } 

     } 

    } 

我呼吁用下面的代码的功能。

ParseErrorHandlingController.handleParseError(error: error as! NSError) 

,但我得到以下错误

Missing argument for parameter #1 in call 

我真的stucked!

非常感谢!

回答

1

看起来您在其他函数中声明了handleInvalidSessionTokenError(),在Parse的示例中它是一个私有类函数。关于错误,您可以尝试使用案例PFErrorCode.errorInvalidSessionToken.rawValue

+0

您对“PFErrorCode.errorInvalidSessionToken.rawValue”的建议奏效!但是现在我得到另一个错误。你能看看更新的问题吗? –

+0

好吧,不用担心,我想它<3! –