2017-02-13 8 views
0

Есть ли способ получить токен вне метода регистрации позже в коде? Я имею в виду, есть ли токен, назначенный атрибуту объекта Push?ionic2 push get token

push.on('registration', (data) => { 
    // console.log("device token ->", data.registrationId); 
    //TODO - send device token to server 
    }); 

Приведенный выше код работает, чтобы увидеть токен, но он находится за пределами моих контроллеров или поставщиков. Мне нужно получить к нему доступ позже в моем коде. Я хочу отправить токен на сервер, но для этого мне сначала нужно получить имя пользователя. Поскольку регистрация push происходит тогда, когда device ready, у меня пока нет доступа к имени пользователя. Другая проблема заключается в том, что новые пользователи не могут назначить токен конкретному пользователю, а send device token to server выполнить невозможно.

+0

Привет Эль Dude. Если мой ответ помог вам решить вашу проблему, отметьте его как принятый. Благодарю. –

ответ

1

Вы можете использовать localStorage.

SetItem

localStorage.setItem('device_token', data.registrationId); 

и использовать его как этот

GetItem

this.device_token = localStorage.getItem('device_token'); 
+0

Из моего понимания, использующего iOS для разработки, токен устанавливается, когда пользователь подтверждает, что разрешает push-сообщения и остается постоянным. Нужно уметь читать его в любое время из библиотеки Push, нет? –

+1

@ElDude Да. Токен остается таким же, пока пользователь не устанавливает приложение снова. Затем он получает еще один токен. –