我希望能够将自定义数据存储在auth.login返回的JSON对象中 - AngularFire2方法
使用Ionic2中的电子邮件/密码方法进行身份验证 - AngularFire2库。
signin(credentials) {
return this.af.auth.login(credentials);
}
this.af.auth.login方法返回包含以下数据的json对象。
{
"auth": {
"uid": "d901fffb-********8099",
"displayName": null,
"photoURL": null,
"email": "****@gmail.com",
"emailVerified": false,
"isAnonymous": false,
"providerData": [
{
"uid": "*****@gmail.com",
"displayName": null,
"photoURL": null,
"email": "****@gmail.com",
"providerId": "password"
}
],
"apiKey": "AB*********",
"appName": "[DEFAULT]",
"authDomain": "******",
"stsTokenManager": {
"apiKey": "***********",
"refreshToken": "ADDl5SEJAWQ90BDG8q1uN6_mn2QYpkMLALUog1ax8lkkmHSQp3jM6CE9BM34ur59Es99rlPnuNM5dsIGAqPZQ3HXRYXpmvr4Jy5UHLgyQEgSg9NydfjXeRuTgajnsPu5bGlJqt679hl_Fv-y_7LIXewW0fr9tzjyH3ur3-_QoXNT99wHazLIwqD4CdsKI95Ka64CI4O12PikH6Huti4vqzxdXy6jq-8jTA",
"accessToken": "eyJhbGciOiJSUzI1NiIsImtpZCI6Ijk5ZGI1MDc4ZDRkOWUyMTAyZDg1NzA0MWMzMjExNjZiZGE3OGUxZjAifQ.eyJpc3MiOiJodHRwczovL3NlY3VyZXRva2VuLmdvb2dsZS5jb20vcm9hZGJhbmd2YXBwIiwiYXVkIjoicm9hZGJhbmd2YXBwIiwiYXV0aF90aW1lIjoxNDg0MTk1MjY3LCJ1c2VyX2lkIjoiZDkwMWZmZmItNzJkMy00YzVhLThjZGEtOGY0MWYyZjQ4MDk5Iiwic3ViIjoiZDkwMWZmZmItNzJkMy00YzVhLThjZGEtOGY0MWYyZjQ4MDk5IiwiaWF0IjoxNDg0MTk1MjY3LCJleHAiOjE0ODQxOTg4NjcsImVtYWlsIjoibWFnbnVzLm1lbHdpbkBnbWFpbC5jb20iLCJlbWFpbF92ZXJpZmllZCI6ZmFsc2UsImZpcmViYXNlIjp7ImlkZW50aXRpZXMiOnsiZW1haWwiOlsibWFnbnVzLm1lbHdpbkBnbWFpbC5jb20iXX0sInNpZ25faW5fcHJvdmlkZXIiOiJwYXNzd29yZCJ9fQ.tyqjKCJ_QhBGTRw9ji2iq8bbwmyT4i5vt4MsYpoQHwgicew9PWV1OKoGCHQho0l5ilGHkUeXrDAg3xD7_RHhM_CLNnqNJl-m76-F3uYM1AEjzLMPd2j6q6aO6m3E3fWSa5t9rJYtvuCNaKexpAB9g_l_HTOjNsX4E9XNCB5-v0_vjt9uYPsHM5G-yjuOxru-FJYhNwCCpN3rN97XzP9vkBhWSCQTCHBM3yS4xKCgzMeUb909OUxZK4ZrQFLP0BYPB3U1izmYlSdWd_tuLHm5GMqmerdXf08W_737UpOHOZuLls2pO9RVok-FjYAji-wxQTVEI0hq-hr7v1-mCqiIOw",
"expirationTime": 1484198865797
},
"redirectEventId": null
},
"uid": "d901f***********8099",
"provider": 4
}
我要做的是在公司名称,手机号码,固定电话号码等字段中添加一些这样的字段到上面返回的json对象。
所以auth.login json promise调用存储了配置文件数据,而不是我必须单独在firebase数据库中存储其他数据。
非常感谢任何帮助。
我的系统信息如下:
Cordova CLI: 6.4.0
Ionic Framework Version: 2.0.0-rc.3
Ionic CLI Version: 2.1.18
Ionic App Lib Version: 2.1.9
Ionic App Scripts Version: 0.0.48
ios-deploy version: Not installed
ios-sim version: Not installed
OS: Linux 4.4
Node Version: v6.9.0
Xcode version: Not installed
使用Angularfire2和firebase 3
答案 0 :(得分:1)
根据https://docs.ionic.io/services/auth/#storing-data
它应该像
一样简单 auth.user.set('birthdate', '5/17/1985');
但请注意,您必须导入云身份验证服务
编辑:3/13 啊,意识到我忘记了你也必须打电话
auth.user.save()
设置所有字段后,您可以调用.load()来获取最新的数据。
答案 1 :(得分:0)
您也可以这样尝试,不使用auth.user我只调用用户
this.user.set('birthday', '3/04/1999');
this.user.set('username', 'JaneDoe');
this.user.save();