Я пытаюсь выполнить сервисную функцию в фоновом режиме, которая получает токен обновления с сервера каждые 4 минуты.
@Injectable()
export class RefreshTokenService {
time: any;
token: string;
email: string;
credentials: any;
constructor(private http: HttpClient) {
}
getToken(): string {
const credentials = localStorage.getItem('credentials');
if (credentials) {
const parsedCredentials = JSON.parse(credentials);
const token = parsedCredentials.token;
return token;
}
return null;
}
refreshToken(token: string) {
const tokenJson: any = {'token': token};
this.http.post('/api-token-refresh/', tokenJson, httpOptions).subscribe(response => {
const data = JSON.parse(JSON.stringify(response));
this.credentials = JSON.parse(localStorage.getItem('credentials'));
this.credentials.token = data.token;
localStorage.setItem('credentials', JSON.stringify(this.credentials));
});
}}
Теперь я выполняю refreshToken()
in the app.component.ts
внутриngOnInit()
, поэтому он выполняется каждый раз, когда я загружаю страницу в приложение, и работает должным образом, но я не нашел подходящего способа вызывать refreshToken()
каждые 4 минуты в фоновом режиме.
Я уже смотрел на это, но, похоже, не работает ... Как вызывать функцию каждые 2 минуты в angular2?