Skip to content

Fiks RO-3175: Hindre evig loop pga 401-feil#974

Merged
jorgkv merged 2 commits intodevelopfrom
fix/RO-3175-edit-button-bug-2
Apr 10, 2026
Merged

Fiks RO-3175: Hindre evig loop pga 401-feil#974
jorgkv merged 2 commits intodevelopfrom
fix/RO-3175-edit-button-bug-2

Conversation

@jorgkv
Copy link
Copy Markdown
Contributor

@jorgkv jorgkv commented Apr 10, 2026

Feilen var at ApiInterceptor snappet opp 401 på /Trip/ObserverTrips og trigget token refresh uendelig mange ganger. Dette gjorde at appen igjen hentet /Account/MyPage i en evig loop, og at appen ikke skjønte at administrator hadde tilgang til redigering.

Dette fikses i ApiInterceptor på to måter.

  • For det første droppes token refresh om kallet er for /Trips/ObserverTrips. Det gjøres uansett token refresh under oppstarten, og observatører kan evt logge ut og inn igjen om de har problemer med dette.
  • For det andre legges det til en variabel lastRefreshTime som brukes for å stoppe en evt lignende evig loop i framtiden.

I tillegg endres logikken litt i ObserverTripsService. Nå hentes bare turene når egenskapen isLoggedIn endrer seg. En debouce bør sørge for at token refresh under oppstarten fås med.
Eventuelle token refresh senere trigger ikke henting av obsturer på nytt.

Feilen var at ApiInterceptor snappet opp 401 på /Trip/ObserverTrips
og trigget token refresh uendelig mange ganger.
Dette fikses i ApiInterceptor på to måter. For det første
droppes token refresh om kallet er for /Trips/ObserverTrips. Det gjøres uansett token refresh
under oppstarten, og observatører kan evt logge
ut og inn igjen om de har problemer med dette.
For det andre legges det til en variabel `lastRefreshTime` som brukes for å støtte en evt lignende evig loop i framtiden.

I tillegg endres logikken litt i ObserverTripsService.
Nå hentes bare turene når egenskapen `isLoggedIn`
endrer seg. En debouce bør sørge for at token
refresh under oppstarten fås med.
Eventuelle token refresh senere trigger ikke
henting av obsturer på nytt.
@github-actions
Copy link
Copy Markdown

Azure Static Web Apps: Your stage site is ready! Visit it here: https://victorious-water-056410803-974.westeurope.azurestaticapps.net

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Denne PR-en adresserer RO-3175 ved å hindre en evig token-refresh-loop når et bestemt API-kall returnerer 401 (ObserverTrips), og justerer samtidig hvordan observer-turer lastes for å unngå unødvendige re-fetches ved senere token refresh.

Changes:

  • Oppdaterer ApiInterceptor til å ikke trigge token refresh for /Trip/ObserverTrips, og innfører en enkel “recent refresh”-throttle.
  • Endrer ObserverTripsService til å hente/slette data kun når isLoggedIn endrer seg, og venter på nettverk før første fetch ved innlogging.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
src/app/core/services/observer-trips/observer-trips.service.ts Endrer init-strømmen til å trigge fetch/remove basert på isLoggedIn og nettverk, i stedet for combineLatest på user+nettverk.
src/app/core/http-interceptor/ApiInterceptor.ts Stopper refresh-loop ved å short-circuite 401 på ObserverTrips, og legger inn tidsbasert refresh-guard.

@github-actions
Copy link
Copy Markdown

Azure Static Web Apps: Your stage site is ready! Visit it here: https://victorious-water-056410803-974.westeurope.azurestaticapps.net

@jorgkv jorgkv merged commit 39466c4 into develop Apr 10, 2026
8 checks passed
@jorgkv jorgkv deleted the fix/RO-3175-edit-button-bug-2 branch April 10, 2026 11:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants