第一次Auth0
会很好地启动登录屏幕,但是当我注销并再次登录时,它会自动登录而不显示登录屏幕。
如果我删除了chrome历史记录,那么它似乎运行正常。
这是我要登录的代码。
public void doLogin(Activity activity){
WebAuthProvider.init(auth0)
.withScheme("com.package.app")
.withAudience(String.format("https://%s/api/",
AUTH0_DOMAIN))
.withScope("openid profile email offline_access read:current_user update:current_user_metadata")
.start(activity, webCallback);
}
private final AuthCallback webCallback = new AuthCallback() {
@Override
public void onSuccess(@NonNull Credentials credentials) {
credentialsManager.saveCredentials(credentials);
accessToken= credentials.getAccessToken();
}
当我按下logout button
时,我将执行以下代码。
credentialsManager.clearCredentials();
这将注销用户,但不会从chrome清除会话。
有什么办法可以从浏览器中清除会话。
答案 0 :(得分:1)
这很可能是由于Auth0在检查用户的SSO cookie存在并因此登录后无缝地登录了您(因此不会提示您输入登录凭据)。这是因为在注销时,您实际上并未将用户重定向到/v2/logout
端点以清除此SSO cookie:https://auth0.com/docs/logout