Firebase 経由で Digits ユーザーを認証しようとしています。twitter エンドポイントを介して Digits ユーザーを認証できるという話を 2 回以上聞いたことがあります。だから私は今それを試していますが、私はかなり立ち往生しています。ユーザーを作成できるように、session?.authToken を Firebase に送信しようとしています。数字は本当にクールに見えるので、私はそれを使い続けたいと確信しています. これがまったく不可能な場合は、数字を処理できる BaaS の方向性を示していただければ幸いです。事前に感謝します。ここに私のコードがあります:
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
let authButton = DGTAuthenticateButton(authenticationCompletion: { (session: DGTSession?, error: NSError?) in
if (session != nil) {
// TODO: associate the session userID with your user model
let message = "Phone number: \(session!.phoneNumber)"
let alertController = UIAlertController(title: "You are logged in!", message: message, preferredStyle: .Alert)
alertController.addAction(UIAlertAction(title: "Cancel", style: .Cancel, handler: .None))
self.presentViewController(alertController, animated: true, completion: .None)
DataService.FireBase.Surfer.authWithOAuthProvider("twitter", token: session!.authToken, withCompletionBlock: { error, newAuthData in
if error != nil {
print(error)
} else {
print(newAuthData)
}
})
} else {
NSLog("Authentication error: %@", error!.localizedDescription)
}
})
authButton.center = self.view.center
self.view.addSubview(authButton)
let button = UIButton(type: UIButtonType.System) as UIButton
button.frame = CGRectMake(100, 100, 100, 50)
button.backgroundColor = UIColor.greenColor()
button.setTitle("Test Button", forState: UIControlState.Normal)
button.addTarget(self, action: "buttonAction:", forControlEvents: UIControlEvents.TouchUpInside)
self.view.addSubview(button)
}
func buttonAction(sender:UIButton!)
{
print("Button tapped")
print(authTkn)
Digits.sharedInstance().logOut()
}
ここにDataServiceがあります:
class DataService{
static let FireBase = DataService()
private var _REF_BASE = Firebase(url: "https://testingtoday.firebaseio.com")
var Surfer: Firebase {
return _REF_BASE
}
}