Activities of "sumeyye.kurtulus"

Thank you for your follow-up. I’ve reviewed the configuration I mentioned, and I wasn’t able to reproduce the issue on my side.

To better understand and investigate the problem, could you kindly share a minimal, reproducible example of your project? You can refer to this guide for details: How to create a Minimal, Reproducible Example.

Once ready, please feel free to send it to sumeyye.kurtulus@volosoft.com, and we’ll be glad to take a closer look.

Hello again,

Apologies for the delayed response, and thank you for your patience and the detailed information you've provided.

After revisiting your implementation, I can confirm that the issue stems from the OpenID Connect library appending an unnecessary query string (?&&) that isn't properly handled. Normally, Angular routing takes care of cleaning up such artifacts, but unfortunately, this particular case falls outside of its scope.

As a temporary workaround until a permanent fix is released, I recommend the following approach:

import { OAuthService } from 'angular-oauth2-oidc';

export class AppComponent implements OnInit {
  protected oauthService = inject(OAuthService);
  protected windowService = inject(AbpWindowService);

  ngOnInit() {
    this.oauthService.events.subscribe(event => {
      if (event.type === 'token_received') {
        const rawQuery = window.location.search;
        if (rawQuery && !rawQuery.includes('=')) {
          this.windowService.reloadPage();
        }
      }
    });
  }
}

This solution listens for the token_received event and reloads the page when a malformed query string is detected, helping to mitigate the issue in both development and production environments.

Let me know if you need further assistance.

Thank you for sharing those additional details. I understand that this issue is blocking your progress.

You can continue using the "inject": false setting, especially since Safari is having trouble loading the stylesheet directly. As a final suggestion, you may consider preloading the styles in index.html as shown below:

<link rel="preload" href="layout-bundle.css" as="style" onload="this.rel='stylesheet'" />
<noscript>
  <link rel="stylesheet" href="layout-bundle.css" />
</noscript>

Please let us know if you need any further assistance. Thank you for your cooperation.

I am delighted to hear that your problem has been solved.

Hello, sorry for the delayed response. If you are still experiencing the issue, I recommend overriding the authentication guard as a temporary solution until we release an official fix:

// new-auth-flow-guard.ts
import { AuthService } from '@abp/ng.core';
import { inject } from '@angular/core';

export const newAuthenticationFlowGuard = () => {
  const authService = inject(AuthService);

  if (authService?.isInternalAuth) {
    return true;
  }

  authService.navigateToLogin();
  return false;
};

Then, update your app-routing.module.ts as follows:

import { newAuthenticationFlowGuard } from './new-auth-flow-guard';

{
  path: 'account',
  loadChildren: () =>
    import('@volo/abp.ng.account/public').then(m => m.AccountPublicModule.forLazy()),
  canActivate: [newAuthenticationFlowGuard],
}

Thank you for your continued effort and patience — I understand you've already tried several approaches.

We’ve tried reproducing the issue on both development and production builds, but unfortunately haven’t been able to replicate it so far. Because of that, we’re unable to provide a guaranteed fix at this point.

That said, based on your description, this doesn’t appear to be directly related to Angular’s routing. It’s more likely caused by a deployment or infrastructure-level behavior. Could you please check the following:

  • Are there any redirects or rewrites (e.g. in NGINX, Apache, or a CDN) that might be preserving or appending query strings?
  • Is there a proxy or load balancer in place that could be modifying request URLs or injecting ?&& patterns?
  • Could there be any old links or external redirects pointing to your app with malformed URLs?

If possible, setting up URL rewrites to strip or sanitize these query strings (e.g. redirecting to a clean / path) might help resolve the issue.

We noticed that the request to layout-bundle.css is returning a response with Content-Type: text/html instead of text/css. This usually means the file isn’t found, and the server is falling back to the default page (e.g., index.html).

Could you please check whether anything in your deployment setup might be redirecting unknown paths (like layout-bundle.css) to the Angular app's entry point?

Yes, the order of your providers may lead to circular dependency issues like the one you're encountering.

To help you better, could you please share how you've configured your providers and any related modules? That way, I can take a closer look and suggest a more targeted fix.

Also, have you had a chance to check the sample project here? It might offer some insights or a working reference:https://drive.google.com/file/d/1mZN3B14JMsPf-WH_nQIpRVFgnxOvA46B/view?usp=drive_link

I have also tried on a mobile device. My device is android and I used my default browser for testing.

Thank you for following up, and I am sorry to hear the issue is still persisting.

Since this behavior doesn’t occur in development, it’s likely related to how the application is built or served in production — potentially during the deployment phase. That could be why the query string isn’t being cleaned up as expected.

In the meantime, here's a quick way to programmatically remove any unwanted query like ?&& from the URL once the app loads:

export class AppComponent implements OnInit {
  private router = inject(Router);

  ngOnInit() {
    const rawQuery = window.location.search;
    const isGarbageQuery = rawQuery && rawQuery.match(/^(\?&+)+$/);

    if (isGarbageQuery) {
      const url = this.router.url.split('?')[0];
      this.router.navigateByUrl(url, { replaceUrl: true });
    }
  }
}

This ensures the URL is cleaned without reloading the page.

Let me know if you would need further assistance on that. Thank you for your cooperation.

Showing 181 to 190 of 465 entries
Boost Your Development
ABP Live Training
Packages
See Trainings
Mastering ABP Framework Book
The Official Guide
Mastering
ABP Framework
Learn More
Mastering ABP Framework Book
Made with ❤️ on ABP v10.1.0-preview. Updated on November 04, 2025, 06:41