The redirect() method of the NavigationPrecommitController interface redirects the browser to a specified URL and specifies history behavior and any desired state information.
redirect(url, options)urlThe URL to redirect to.
options OptionalAn options object, the properties of which can include:
state OptionalContains any state information you want to pass along with the navigation; for example, for logging or tracking purposes. This can be represented by any value type. The state for the navigation can subsequently be retrieved via the NavigationHistoryEntry.getState() method of the resulting history entry.
history OptionalAn enumerated value that specifies how this redirect should be added to the navigation history. It can take one of the following values:
autoThe default value, which lets the browser decide how to handle it:
Navigation.navigate() call, the value will be whatever was specified in the navigate() call's history option.push, but it will become replace if the redirect points to the same URL as the pre-navigation URL.pushAdds a new NavigationHistoryEntry to the navigation history, and clears any available forward navigation (that is, if the user previously navigated to other locations, then used the back button to return back through the history before initiating the navigation that caused the redirect).
replaceReplaces the Navigation.currentEntry with the resulting new NavigationHistoryEntry.
Note: The redirect() method can convert the history behavior between auto, push, and replace, but it cannot turn a traverse navigation into a push/replace navigation and vice versa.
None (undefined).
InvalidStateError DOMExceptionThrown if:
NavigateEvent was not intercepted.NavigateEvent.navigationType is not push or replace.SyntaxError DOMExceptionThrown if the specified url is invalid.
SecurityError DOMExceptionThrown if the current document is unable to have its URL rewritten to the provided redirect url.
See the main NavigationPrecommitController page for an example.