2015-05-06 123 views
0

我正在嘗試使用myname/mypass的現有用戶/密碼登錄解析,但我一直收到錯誤代碼101,無效的登錄憑證。解析Swift登錄錯誤:無效的用戶憑證

我知道myname/mypass的工作原理是因爲我可以使用signUp函數來創建此用戶並像往常一樣進入應用程序。我也能夠在Parse Web界面上看到此用戶的存在。

我試圖從文本字段中拉出用戶名/密碼,並在「myname」/「mypass」中進行硬編碼。一切都是一樣的。

@IBAction func loginButtonTapped(sender: AnyObject) { 
     println(userNameTextField.text) //correctly prints the string. 
     println(passwordTextField.text) //correctly prints the string. 
     PFUser.logInWithUsernameInBackground(userNameTextField.text, password:passwordTextField.text) { 
      (user: PFUser?, error: NSError?) -> Void in 
      if user != nil { 
       var currentUser = PFUser.currentuser() 
       println("log in succesful") // this does not print. 
       performSegueWithIdentifier("SegueToHomeScreen", self) // this does not happen 
      } else { 
       // The login failed. Check error to see why. 
      } 
     } 

我知道這與其他一些關於SO的問題類似,但那些問題一直沒有答案。任何幫助,將不勝感激。

+0

作爲一個說明,我可以確認用戶存在:我在PFUser.query()中查詢了帶有選項的用戶並返回了正確的用戶。有任何想法嗎? – cosborne

回答

1

呃,我覺得自己像個白癡。我想感謝其他人的建議,但實際上這是我自己的失敗。

在signUp期間,我(可恥地)將密碼硬編碼爲字符串「myPassword」,所以我想我正在用密碼「pass」和「myPassword」進行註冊。我沒有專注於signUpViewController,因爲它工作正常。

不要像我一樣。在您進一步離開之前,請確保您正在設置您的用戶名,並在您的註冊中按照預期通過。

2

您是否嘗試過使用(user: PFUser!, error: NSError?)而不是(user: PFUser?, error: NSError?)來強制PFUser解包。這是我在將代碼與官方指南here比較時可以看到的唯一差異。

+0

謝謝你的想法。我做了嘗試,但後來我得到「無法用類型的參數列表調用loginWithUsernameInBackground(String!,password:String !,(PFUser!,NSError?) - > Void)'」有什麼想法? – cosborne

+0

基本上你的用戶是一個零變量,你有沒有嘗試在類中進一步實例化一個'PFUser'? – mforrest

+0

我真的很感激你對此的興趣。我用'var user = PFUser()'進一步實例化了函數,但是如果我設置了'user.logInWithUsernameInBackground ...'我得到了「PFUser沒有名爲logInWithUsernameInBackground的成員。 – cosborne