更新时间:2024-06-28 GMT+08:00
分享

SSO方式登录

1
HWMSdk.getOpenApi.loginBySSO(SsoAuthParam ssoAuthParam, HwmCallback<LoginResult> callback)

接口描述

该接口用于通过SSO的方式登录和鉴权。

注意事项

除匿名入会外,在使用其他业务之前必须进行成功登录。

登录成功以后会发送登录成功事件onSuccess回调。

方法定义

1
2
3
4
5
6
7
8
    /**
     * SSO登录接口
     * @param code 授权码
     * @param domain 企业域名
     * @param authServerType 鉴权服务器类型
     * @param callback
     */
    void loginBySSO(SsoAuthParam ssoAuthParam, HwmCallback<LoginResult> callback);

参数描述

表1 参数说明

参数

是否必须

类型

描述

ssoAuthParam

SsoAuthParam

SSO登录鉴权参数

callback

HwmCallback<LoginResult>

回调处理对象

表2 SsoAuthParam 参数说明

参数

是否必须

类型

描述

code

String

SSO授权码

domain

String

SSO企业域名

authServerType

AuthServerType

鉴权服务器类型,枚举取值如下

AUTH_SERVER_TYPE_OAUTH2(0, "单点登录")

返回值

无。

示例代码

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
SsoAuthParam ssoAuthParam = new SsoAuthParam();
        ssoAuthParam.setDomain(domain);
        ssoAuthParam.setCode(code);
        ssoAuthParam.setAuthServerType(AuthServerType.AUTH_SERVER_TYPE_OAUTH2);
HWMSdk.getOpenApi(ssoAuthParam, new HwmCallback<LoginResult>() {
            @Override
            public void onSuccess(LoginResult loginResult) {
                dismissLoading();
                if (loginResult != null) {
                    DemoUtil.showToast("登录成功" + loginResult.getUserUuid());
                } else {
                    DemoUtil.showToast("已登录");
                }
            }

            @Override
            public void onFailed(int retCode, String desc) {
                HwmContext.getInstance().runOnMainThread(() -> {
                    DemoUtil.showToast("登录错误:code=" +  retCode + " desc=" + desc);
                    dismissLoading();
                });
            }
        });

相关文档