Class
The SessionManager
is used to manage user sign in sessions.
Methods
Method | Returns | Notes |
---|---|---|
void | Clear all sessions | |
generateSeverSessionByPortalSession(portalSession, serverUrl, credentialsParamForGenerateToken) | Promise<UserSession> | Generate server session with owning system portal session. |
generateToken(portalUrl, getTokenParam, credentialsParam) | Promise<any> | Generate token. |
getClientIdByUrl(portalUrl) | string | Get a valid client id for portal url |
UserSession | Return main session. | |
getSessionByUrl(url) | UserSession | Return session by url. |
getSessionKeyFromSession(session) | string | Get session key from a session. |
UserSession[] | Return all sessions. | |
getSignInErrorByCode(errorCode) | SignInError | Get the sign-in error by providing the sign-in error code. |
SignInErrorCode | Get the sign-in error by providing the authentication error. | |
handleAuthError(error, popup) | Promise<UserSession> | When you need to handle the error caused by sign in, you can catch the error and call this method. This method will try to sign in to get a new session. |
nonOAuthSignIn(desUrl) | Promise<any> | Start non-OAuth sign in flow and return the user session. |
removeSession(session) | boolean | Remove the session from session manager. |
signIn(fromUrl, popup, desUrl, clientId?, forceLogin?, federatedServcieUrl?) | Promise<UserSession> | Start OAuth sign in flow and return the user session. |
signOut() | void | Sign out from main portal. |
useDialogToSetClientIdToConnectiosOfAppConfigAndSignIn(portalUrl, needToSignIn?, serviceUrl?) | Promise<any> | Popup a dialog to set client id to app config |
Get singleton instance. |
generateSeverSessionByPortalSession
Class MethodgenerateSeverSessionByPortalSession(portalSession: UserSession, serverUrl: string, credentialsParamForGenerateToken: string): Promise<UserSession>
Generate server session with owning system portal session.
Parameters
Parameter | Type | Default | Notes |
---|---|---|---|
portal | UserSession |
| A session of ArcGIS REST JS 'UserSession' representing a logged in user. |
server | string |
| |
credentials | string | 'same-origin' |
Returns
Promise<UserSession>
generateToken
Class MethodgenerateToken(portalUrl: string, getTokenParam: string, credentialsParam: string): Promise<any>
Generate token.
Parameters
Parameter | Type | Default |
---|---|---|
portal | string |
|
get | string | '' |
credentials | string |
|
Returns
Promise<any>
getClientIdByUrl
Class MethodgetClientIdByUrl(portalUrl: string): string
Get a valid client id for portal url
Parameters
Parameter | Type |
---|---|
portal | string |
Returns
string
getMainSession
Class MethodgetMainSession(): UserSession
Return main session.
The main session is session of the portal that the app connects to.
Returns
UserSession
ArcGIS REST JS 'UserSession' representing a logged in user.
getSessionByUrl
Class MethodgetSessionByUrl(url: string): UserSession
Return session by url.
Parameters
Parameter | Type |
---|---|
url | string |
Returns
UserSession
ArcGIS REST JS 'UserSession' representing a logged in user.
getSessionKeyFromSession
Class MethodgetSessionKeyFromSession(session: UserSession): string
Get session key from a session.
Parameters
Parameter | Type | Notes |
---|---|---|
session | UserSession | A session of ArcGIS REST JS 'UserSession' representing a logged in user. |
Returns
string
getSessions
Class MethodgetSessions(): UserSession[]
Return all sessions.
Returns
UserSession[]
Array of ArcGIS REST JS 'UserSession' representing the logged in users.
getSignInErrorByCode
Class MethodgetSignInErrorByCode(errorCode: SignInErrorCode): SignInError
Get the sign-in error by providing the sign-in error code.
Parameters
Parameter | Type | Notes |
---|---|---|
error | SignInErrorCode | The sign-in error code. |
Returns
SignInError
getSignInErrorCodeByAuthError
Class MethodgetSignInErrorCodeByAuthError(error: any): SignInErrorCode
Get the sign-in error by providing the authentication error.
Parameters
Parameter | Type | Notes |
---|---|---|
error | any |
|
Returns
SignInErrorCode
handleAuthError
Class MethodhandleAuthError(error: any, popup: boolean): Promise<UserSession>
When you need to handle the error caused by sign in, you can catch the error and call this method. This method will try to sign in to get a new session.
Parameters
Parameter | Type | Default |
---|---|---|
error | any |
|
popup | boolean | true |
Returns
Promise<UserSession>
nonOAuthSignIn
Class MethodnonOAuthSignIn(desUrl: any): Promise<any>
Start non-OAuth sign in flow and return the user session.
Parameters
Parameter | Type | Notes |
---|---|---|
des | any | The url you want to sign in |
Returns
Promise<any>
removeSession
Class MethodremoveSession(session: UserSession): boolean
Remove the session from session manager.
Parameters
Parameter | Type | Notes |
---|---|---|
session | UserSession | A session of ArcGIS REST JS 'UserSession' representing a logged in user. |
Returns
boolean
signIn
Class MethodsignIn(fromUrl: string, popup: boolean, desUrl: string, clientId?: string, forceLogin?: boolean, federatedServcieUrl?: string): Promise<UserSession>
Start OAuth sign in flow and return the user session.
Parameters
Parameter | Type | Default | Notes |
---|---|---|---|
from | string | window.jimu | The page you start sign in |
popup | boolean | true | If 'true', the window will popup, or, it will redirect to sign in page |
des | string | ... | The url you want to sign in |
client | string |
| |
force | boolean |
| |
federated | string |
|
Returns
Promise<UserSession>
useDialogToSetClientIdToConnectiosOfAppConfigAndSignIn
Class MethoduseDialogToSetClientIdToConnectiosOfAppConfigAndSignIn(portalUrl: string, needToSignIn?: boolean, serviceUrl?: string): Promise<any>
Popup a dialog to set client id to app config
Parameters
Parameter | Type | Notes |
---|---|---|
portal | string | portal url |
need | boolean | indicates whether need to sign-in |
service | string | service url |
Returns
Promise<any>
getInstance
getInstance(): SessionManager
Get singleton instance.
Returns
SessionManager