Ich arbeite an einem Projekt in swift 3.0
zusammen mit der Unterstützung von Alamofire
Framework als interline meine Webservercalls. Im Grunde möchte ich eine Singleton-Klasse verwenden, die ich zuvor in swift 2.3
verwendet habe, wo ich die Methode deklariere, und dann, in was auch immer der Viewcontroller ich es ausführen möchte, rufe ich die Methode wie folgt auf.Alamofire Singleton Webservercall Klassenfehler
APIManager.sharedInstance.login(username, password: password, completion: { (user,success) in
if success {
}
}) { (error) in
}
Meine Forderung ist dieser Code in swift 3.0
zu bekommen, so konnte ich auf der Arbeit tragen. Hilfe dazu würde sehr zu schätzen wissen. Der Code meiner Singleton-Klasse wie unten (dieser Code ist in , ich möchte dies in 3.0).
import UIKit
import Alamofire
import SwiftyJSON
struct Singleton {
static let instance : APIManager = APIManager()
}
public class APIManager: NSObject {
public class var sharedInstance: APIManager {
return Singleton.instance
}
let manager = Manager()
override init() {
}
//MARK:====Login====
//MARK: methods
func login(username: String, password: String, completion: (user: User, success: Bool) ->(), failed:(error: NSError) ->()) -> Request {
let urlRequest // Create a URLRequest and pass to the method
return manager.request(urlRequest)
.validate()
.responseJSON { response in
if let error = response.result.error {
failed(error: error)
print(error)
return;
}
let ok = ((response.result.value as! JSONDictionary)["success"] as? Bool)!
let userJson = JSON((response.result.value as! JSONDictionary)["user"]!)
let token = ((response.result.value as! JSONDictionary)["token"] as? String)!
NSUserDefaults.standardUserDefaults().setValue(token, forKey: UserDefaultKey.Token)
NSUserDefaults.standardUserDefaults().synchronize()
let user = User(json: userJson)
completion(user: user,success: ok)
print ("Auth is : \(token)")
}
}
}
SO wollen, wo das Problem wie einige Details HIER – dragoneye
Sir PUT Ich habe in meinem Körper erwähnt, dass meine Anforderung ist, diesen Code in Swift 3.0 seit seiner Eingabe in Swift 2.3 zu konvertieren. Ihre Hilfe würde sehr schätzen – danutha
Ich denke, es gibt kein Problem, dass Sie diesen Code für SWIFT3 verwenden können, aber daran erinnern, würden Sie etwas Warnung von Alamorefire Ich denke, Sie müssen Ihren POD für Alamorefire aktualisieren (falls Sie 2,3 POD für Alamorefire verwenden) – dragoneye