Я использую Auth0 в своем приложении angular2 и после того, как пользователь регистрируется в службе auth0, отправляет ответ, содержащий данные профиля пользователя.Создание JSON Post In Angular 2
Ответ может выглядеть по-разному в зависимости от метода входа пользователя, который выбирается пользователем. Я только хочу отделить адрес электронной почты в ответе.
Это типичный ответ,
Object
clientID
:
"skdjcbjlwrjlw"
created_at
:
"2016-10-15T06:03:44.636Z"
email
:
"[email protected]"
email_verified
:
true
family_name
:
"Walker"
gender
:
"male"
given_name
:
"Paul"
global_client_id
:
"ojwebcvjoweojewhc"
identities
:
Array[1]
locale
:
"en"
name
:
"Paul Walker"
nickname
:
"nick"
picture
:
"https://lh4.googleusercontent.com/photo.jpg"
updated_at
:
"2016-11-21T22:29:33.158Z"
user_id
:
"google-oauth2|102515181977826170152"
__proto__
:
Object
Теперь, когда я получаю, что ответ я расколоть адрес электронной почты от, как это,
Я создал класс для хранения электронной почты,
export class User { constructor( public email: string, ) { } }
I экземпляр т он возражает,
user: Object;
переместить письмо из объекта профиля в
user
this.user = profile.email;
Проблема в этот момент мне нужно по электронной почте в формате JSON. Поэтому я использую,
var email = JSON.stringify(this.user);
Но когда я console.log(email);
я получаю [email protected] вместо JSON.
Таким образом, в данный момент,
console.log(profile); // outputs json of whole profile
this.user = profile.email;
console.log(this.user); // outputs just the email address
var email = JSON.stringify(this.user);
console.log(email); // expects json gets [email protected]
мне нужна email
быть актуальной JSON. Я не правильно использую JSON.stringify(this.user);
?
2. не создает ничего. Он объявляет переменную типа Object. 3 присваивает этой переменной profile.email, которая, вероятно, является String. Если пользователь должен быть пользователем, его тип должен быть User, а не Object. И вы не должны назначать строку этой переменной. Чтобы создать экземпляр пользователя, синтаксисом является «новый пользователь (theEmail)». https://www.typescriptlang.org/docs/handbook/classes.html –
Спасибо, человек. Мгновенно работает. Теперь я чувствую себя виноватым. Благодарю. – wuno