- ABP Framework version: v7.2.2
- UI type: Angular
- DB provider: EF Core
- Tiered (MVC) or Identity Server Separated (Angular): yes / no
- Exception message and stack trace:
- Steps to reproduce the issue:"
Hello,
Here are the easiest steps to reproduce the issue we are going to report:
- Open the demo at https://commercial-demo.abp.io/ and log in.
- Open the home page in at least two tabs.
- Refresh all the tabs at the same time. Be as fast as you can.
- Optionally, open up the developer tools, go to the Network tab and open up console to see the requests and errors.
- Wait until a refresh token request kicks in.
At best, user is logged out in all the other tabs but one tab. At worst, a never ending request loop runs with errors in responses in all tabs. We ran into both cases. Below is a screenshot from the worst case, taken after I hit the stop button of the browser.
This is related to OpenIdDict. The same problem is reported some years ago in a comment for a two-major-previous-version of it: https://github.com/openiddict/openiddict-core/issues/783#issuecomment-528824283 . This comment is also related and very informative about the issue https://github.com/manfredsteyer/angular-oauth2-oidc/issues/218#issuecomment-414158965 .
Sometimes we lose unsaved work when working with too many tabs due to this problem. Your demo also has it, so we hope you come up with a solution, a fix or configuration, soon. Maybe catch the exception and retry for a configurable number of times to get over the race condition. Looking forward to your response.
5 Answer(s)
-
0
Hello,
I updated the ABP CLI to the version 7.2.2 and created a new project with the below commands:
dotnet tool update -g Volo.Abp.Cli abp new Acme.BookStore -u angular -dbms PostgreSQL -csfThen followed the steps in the original post with only two tabs. Sent the log file to your e-mail. Please note that there are JavaScript errors as well. Screenshots below.
Markdown supported.Copy, paste, or drag & drop images and files (max 100 MB per file, 100 MB total per post)



