Я использую firebase с angular и oAuth с провайдером firebase facebook. Все работает нормально.
Однако, когда я пытаюсь добавить новую область (user_friends) для примеров, я не получаю никаких данных (всплывающее окно запрашивает у меня правильные области):
//auth.service.ts
signInWithFacebook() {
const provider = new firebase.auth.FacebookAuthProvider();
provider.addScope("user_friends");
return this.oAuthLogin(provider);
}
private oAuthLogin(provider) {
return this._firebaseAuth.auth.signInWithPopup(provider)
.then((credential) => {
this.updateUserData(credential.user)
})
}
Таким образом, учетные данные получили обычную пользовательскую информацию (displayName, photoUrl) как обычно.
Я пытался найти возвращенное обещание в качестве обратного вызова:
type UserCredential = {
additionalUserInfo?: firebase.auth.AdditionalUserInfo | null;
credential: firebase.auth.AuthCredential | null;
operationType?: string | null;
user: firebase.User | null;
};
Мы можем видеть, что firebase.user получает много методов, но не добавляет строку для моей новой области видимости.
interface UserInfo {
displayName: string | null;
email: string | null;
phoneNumber: string | null;
photoURL: string | null;
providerId: string;
uid: string;
}
Таким образом, я не вижу, как мои данные user_friends, которые представляют собой массив (ниже), могут быть добавлены к данным учетных данных (какой метод?) И отображены в моей консоли.
"friends": {
"data": [
//friends id and their name
],
"summary": {
"total_count": 631
}
}
спасибо за вашу помощь!