Authentication
Special Middleware to use in at http API to provide an authentication for every request. The type-parameter P represents the principal information, which contains all login-information needed to authenticate against the external HTTP API. The principal information is held inside and available as flow by calling data. To use this Middleware you need to implement the addAuthentication method, where you get the principal information, when available, to add it to your requests. To implement the client side of authentication process you also need to implement the authenticate method in which you specify what is needed to authenticate the user (e.g. open up a login modal). When your authentication process is done you have to call the complete function and set your principal. Then all requests, that have been initialized while the authentication was running, will be re-executed with the additional authentication information provided by the addAuthentication method. When the user logs out you have to call the clear function to clear all authentication information.
Properties
flow of the information whether the user is authenticated or not
Returns the current principal information. When the principal is available it is returned. When an authentication-process is running the function is waiting for the process to be finished. Otherwise, it returns null if no authentication-process is running or no principal information is available.
List of HTTP-Status-Codes forcing an authentication. Default is 401 (unauthorized).
Functions
Adds the authentication information to all requests by using the given principal.
implements the authentication process. E.g. opens up a login-modal or browsing to the login-page.
enriches requests with additional information. E.g. it could append special header-information, which are needed for authentication.
handles responses. E.g. it could handle specific status-codes and log error messages.
stops propagation of a response to the following Middlewares in the chain