geovis-sso-sdk
v2.1.13
Published
Geovis统一登录,可自动检测SSO登录状态,并实现账号同步登录和同步注销,支持弹窗和页面两种方式登录
Readme
geovis sso sdk 介绍
Geovis统一登录,可自动检测SSO登录状态,并实现账号同步登录和同步注销, 提供了重定向和弹窗两种登录方式
https://www.npmjs.com/package/geovis-sso-sdk
## install
```bash
npm install geovis-sso-sdk
快速开始
import { SSO, SSOOption } from 'geovis-sso-sdk';
// 初始化配置
const host = "https://sso.geovis.com";
const appKey = "YOUR_APP_KEY";
const ssoOption = new SSOOption(host, appKey, null, null);
const sso = new SSO(ssoOption);
// 初始化检测
sso.auth();
// 监听认证事件
sso.on('auth', (authData) => {
if (authData.suceess) {
# 登录成功业务处理
} else {
# 登录失败业务处理
}
});
# 重定向登录示例代码
```bash
_sso.loginWithRedirect({
redirectUrl: redirectUrl, #重定向地址,登录成功后回跳会把token字段拼接在url上
openInNewTab #是否新标签页打开, 不传默认false
})
# 使用弹窗登录示例代码
```bash
_sso.loginWithDialog({
# 登录成功
onSuccess: (resData: SSOResponse<UserInfo>) => {
# 登录成功的业务处理
},
# 登录失败
onFail: (errRes: ssoErrorResponse) => {
# 登录失败的业务处理
},
# 关闭弹窗
onClose: () => {
# 关闭弹窗的业务处理
}
})
# 登出
```bash
_sso.logout()
# 注册事件监听
```bash
_sso.on('auth', (authData) => {
# 登录成功业务处理
})
_sso.on('login', () => {
# 登录钩子函数
})
_sso.on('logout', () => {
# 登出钩子函数
})
```
# 检查登录状态,在需要判断当前用户是否登录时调用
```bash
_sso.auth()
# 在业务方登录成功后,同步token给sso(不推荐使用,推荐去SSO登录)
_sso.login()
# sso登出,如在点击登出按钮时调用
_sso.logout()
# 跳转SSO登录页面去登录
_sso.loginWithRedirect({
redirectUrl: xxx, # 重定向地址,登录成功后回跳会把token字段拼接在url上
openInNewTab: true/false, # 是否新标签页打开,不传默认false
})
# 打开登录弹窗进行登录
_sso.loginWithDialog({
onSuccess: () => {
# 登录成功回调函数
...
},
onFail: () => {
# 登录失败回调函数
...
},
onClose: () => {
# 关闭弹窗的回调
}
})
```
```
如果在nodejs(nestjs)下使用,请导入sso-node.ts
```
