0

用户使用 facebook 登录后,我正在发回一些数据。似乎 Alamofire 正在执行两个请求,而不是出于某种原因仅执行一个请求:

SWIFT代码

func loginViewFetchedUserInfo(loginView: FBLoginView!, user: FBGraphUser!) {
    println("loginViewFetchedUserInfo")

    let fb_id: (AnyObject)!         = user.objectForKey("id") as String
    let first_name: (AnyObject)!    = user.objectForKey("first_name") as String
    let last_name: (AnyObject)!     = user.objectForKey("last_name") as String
    let email: (AnyObject)!         = user.objectForKey("email") as String

    let user_data: Dictionary = [
        "fb_id": fb_id,
        "first_name": first_name,
        "last_name": last_name,
        "email": email
    ]

    Alamofire.request(.POST, "http://localhost:8080/api/v1/user/login", parameters: user_data)
        .responseJSON { (_, _, JSON, _) in
            println(JSON)
    } 
}

控制台输出

loginViewFetchedUserInfo
Optional({
    "status" = "success
})
Optional({
    "status" = "success
})

事实上,我在服务器上收到了两个请求。框架执行两个请求而不是一个请求的任何原因?

4

1 回答 1

0

你的loginViewFetchedUserInfo()函数在里面UIViewController吗?也许您正在初始化 thisUIViewController或函数的所有者类两次

在我的情况下,这是由于同一类的许多实例使用相同的 Notification Observer 名称引起的。

于 2014-12-01T16:36:23.590 回答