Http error response (неизвестный URL): 0 неизвестная ошибка в Firefox при перезагрузке страницы - PullRequest
0 голосов
/ 20 января 2019

Я использую Angular 6.1.10 и rxjs 6.3.3.У меня есть какой-то сервис и этот метод, который получает данные, когда пользователь переходит на главную страницу ("/"):

getCampaigns(): Observable<CampaignDto[]> {
        return this.http.get<CampaignDto[]>(this.campaignsUrl)
            .pipe(
                tap(campaigns => console.log(`fetched ${campaigns.length} campaigns`)),
                catchError(this.errorReporter.handleError('getCampaigns', []))
            );
    }

Это работает, но когда я запускаю приложение и пытаюсь обновить страницу, нажавF5 быстро, например, два раза, я получаю сообщение об ошибке в консоли браузера: режим разработки: enter image description here

режим работы: enter image description here

Если я медленно нажму F5, когда предыдущее обновление страницы сработало, ошибки не будет!Я сломал свой мозг, почему происходит эта ошибка?Ошибка возникает только в браузере Firefox 60.4.0, возможно, esr и ниже, в последних версиях Firefox и Chrome ошибок нет.Любая помощь.

Что не так?Может быть, это ошибка в rxjs?Это не проблема.Мой фронтенд и бэкэнд используют один URL localhost:8080.Проблема существует в режимах разработки и разработки.

ОБНОВЛЕНИЕ :

У меня TokenInterceptor:

@Injectable()
export class TokenInterceptor implements HttpInterceptor {

    constructor(private inj: Injector) {
    }

    intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
        const auth = this.inj.get(AuthService);
        const xAuthToken = auth.xAuthToken;
        if (xAuthToken) {
            console.log(`TokenInterceptor. Getting token: ${xAuthToken}`);
            request = request.clone({
                setHeaders: {
                    'x-auth-token': `${auth.xAuthToken}`
                }
            });
        }
        return next.handle(request);
    }
}
...