2014-10-18 2 views
2

내 웹 사이트에 Angular 및 Firebase의 이메일 & 비밀번호 인증 프레임 워크를 사용하여 사용자 인증을 구축하고 있습니다. 이것은 Firebase Simple Login Framework가 아니라 새로 도입 된 네이티브 프레임 워크입니다. 나는 그래서 사용자 로그인을 생성 할 수 있습니다Firebase ResetPassword 문제

<script src="https://cdn.firebase.com/js/client/1.1.0/firebase.js"></script> 

하지만 ResetPassword 호출은 다음과 같은 오류와 함께 실패합니다

내 코드 링크를 사용하여 중포 기지합니다. 다음과 같이

Error: Firebase.resetPassword failed: First argument must be a valid object. 
    at Error (native) 
    at E (https://cdn.firebase.com/js/client/1.1.0/firebase.js:15:73) 
    at F.G.td (https://cdn.firebase.com/js/client/1.1.0/firebase.js:192:79) 
    at Object.resetPassword (http://localhost:8000/src/js/services/loginservice.js:78:27) 
    at k.$scope.resetPassword (http://localhost:8000/src/js/controllers.js:35:20) 
    at http://ajax.googleapis.com/ajax/libs/angularjs/1.2.26/angular.min.js:177:68 
    at http://ajax.googleapis.com/ajax/libs/angularjs/1.2.26/angular.min.js:171:237 
    at f (http://ajax.googleapis.com/ajax/libs/angularjs/1.2.26/angular.min.js:194:174) 
    at k.$eval (http://ajax.googleapis.com/ajax/libs/angularjs/1.2.26/angular.min.js:112:68) 
    at k.$apply (http://ajax.googleapis.com/ajax/libs/angularjs/1.2.26/angular.min.js:112:346) 

내가 사용하는 코드는 중포 기지 예에서이다. 내가 유효한 이메일 ID가 전달되고 있음을 확인했습니다

ref.resetPassword(email, function(error) { 
    if (error === null) { 
    console.log("Password reset email sent successfully"); 
    } else { 
    console.log("Error sending password reset email:", error); 
    } 
}); 

당신은 알려 주시기 바랍니다 수있는 문제는 무엇입니까? 중포 기지 문서에 따르면 사전 VM

답변

4

에서

덕분에, 당신은 객체가 아닌 문자열을 전달해야합니다.

https://www.firebase.com/docs/web/api/firebase/resetPassword.html

var credentials = {email: email}; 
ref.resetPassword(credentials, function(error) { 
    if (error === null) { 
    console.log("Password reset email sent successfully"); 
    } else { 
    console.log("Error sending password reset email:", error); 
    } 
} 
+0

API 설명서와 자신의 '가이드'차이가있다.이 문제를 지적 해 주셔서 감사합니다. –

+0

은 직접 문의하시기 바랍니다들이 알 수 있도록 디 조롱. 당신은 그 (것)들에 호의를 베풀 것입니다. –

0

I 객체가 더 이상 작동 사용하지 않고, 그것은, 이메일 ""키를 포함해야합니다 첫 번째 인수를 "나에게주는 유지할 것을 발견도 다음 개체는 위의 답변으로했다. 많은 좌절 후, 나는 그것이 중포 기지 문서에 따라 이메일 매개 변수를 전달 일하고 있어요.

$scope.resetPassword = function(email){ 
      console.log("made in to auth method for reset passowrd with email - " + email); 

ref.resetPassword({ 
    email: email 
}, function(error) { 
    if (error) { 
    switch (error.code) { 
     case "INVALID_USER": 
     console.log("The specified user account does not exist."); 
     break; 
     default: 
     console.log("Error resetting password:", error); 
    } 
    } else { 
    console.log("Password reset email sent successfully!"); 
    } 
}); 

} 
관련 문제