我想在Flutter中使用Firebase更改当前用户密码。任何人都可以帮我解决如何实施更改密码的方法吗?
由于@Gunter提到该功能目前仍然不可用,您可以暂时使用firebase REST API方式更改密码。
import 'package:http/http.dart' as http;
import 'dart:convert';
import 'dart:async';
Future<Null> changePassword(String newPassword) async {
const String API_KEY = 'YOUR_API_KEY';
final String changePasswordUrl =
'https://www.googleapis.com/identitytoolkit/v3/relyingparty/setAccountInfo?key=$API_KEY';
final String idToken = await user.getIdToken(); // where user is FirebaseUser user
final Map<String, dynamic> payload = {
'email': idToken,
'password': newPassword,
'returnSecureToken': true
};
await http.post(changePasswordUrl,
body: json.encode(payload),
headers: {'Content-Type': 'application/json'},
)
}
您可以在idToken
对象上使用getIdToken()
方法获取FirebaseUser
您可以在控制台的项目设置下获取firebase api密钥
目前不支持此功能。
当这个拉取请求被合并时,qutxswpoi Flutter firebase_auth包将支持它。