如何禁用@react-oauth/google的自动登录功能?
解决方案
要在useGoogleLogin钩子中禁用自动登录(避免Google自动使用已登录账号完成认证),你可以在钩子的配置参数里添加prompt: 'select_account',如果需要限制Cookie存储,还可配合cookie_policy参数:
修改后的代码如下:
const googleSignup = useGoogleLogin({ onSuccess: async (tokenResponse) => { // signupGoogle({ tokenId: tokenResponse.access_token }) }, prompt: 'select_account', // 强制显示账号选择界面,禁用自动登录 cookie_policy: 'single_host_origin' // 限制Cookie仅在当前域名下存储 })
参数说明:
prompt: 'select_account':这个参数会让Google认证弹窗每次都要求用户选择账号,不会自动登录已关联的账号,效果和组件的auto_select={false}完全一致。cookie_policy: 'single_host_origin':若你希望避免Google在浏览器中存储跨域Cookie,可添加该配置,它会将Cookie的作用域限制在当前域名范围内,减少不必要的Cookie存储。
内容的提问来源于stack exchange,提问作者Pedro Brandão
相关产品推荐
相关产品推荐

