Registration, Okta-SignIn-Widget, Angular, Email-Verification, 2nd try

Dear Okta team,

I am developing an Angular “single page application” that uses the Okta-SignIn-widget. I asked this qestion registration-okta-signin-widget-angular-email-verification before and got a link to this article describing the scenario.

The article describes the procedure correctly, but I have the following problem:

  • The tab is open in the browser that shows the Okta SignIn widget and through which the email verification was triggered.
  • I now receive an email, click on the link and a new tab opens in the same browser that shows the widget again, but this time with the OTP.

However, this is not correct, as the “original” browser is still used according to the drawing. See the red outline in the following drawing.

When I look at the storage in the browser, it is clear why this is happening. The widget uses the session storage by default. This means that the widget in the new tab cannot access the storage from the previous tab and therefore only shows the OTP.

To avoid this problem, I have configured the StorageManager to use “local storage” for transactions.

    storageManager: {
      transaction: {
        storageTypes: ['localStorage'],
      },
    },

This works well until the widget in the old tab notices that the flow is continuing in the new tab. The widget in the old tab deletes the transaction in the local storage. So the widget in the new tab fails.

local storage before:

local storage after continuing in a new tab:

Causes exception:

Please tell me how I can implement a fully functioning registration process using the Okta widget in an Angular single page application.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.