로그인에 signInWithCredential을 사용할 때 Firebase에서 빈 displayName 문제가 발생합니다.
P粉328911308
P粉328911308 2023-09-04 09:43:01
0
2
518
<p>Google 로그인을 사용하고 있는데 사용자에게 Google 계정 이메일과 비밀번호를 입력하라는 메시지가 표시됩니다. </p> <pre class="brush:php;toolbar:false;">const auth = getAuth(app); const userCredentials = signInWithCredential(을 기다립니다. 인증, GoogleAuthProvider.credential(null, 토큰) ); console.log(userCredentials.user)</pre> <p><code>email</code>, <code>photoURL</code>, <code>uid</code> 및 기타 정보를 포함한 사용자 개체를 얻었지만 <code> 디스플레이이름</code>이 비어 있습니다. 이것은 버그입니까, 아니면 예상된 결과입니까? 이름과 닉네임을 포함하여 새 Gmail 계정을 만들려고 했지만 <code>displayName</code> <code>displayName</code>을 얻으려면 어떻게 해야 하나요? </p>
P粉328911308
P粉328911308

모든 응답(2)
P粉794851975

signInWithCredential获取displayName的问题。显然,正如之前所说的,displayName始终为null。但是,如果你使用google_sign_in库进行登录并检查GoogleSignInAccount에서 액세스할 수 없는 개체를 "해킹"하는 방법을 찾았습니다. 그러면 해당 표시 이름이 표시됩니다. 그런 다음 이전에 사용한 Google 로그인 자격 증명을 사용하여 Firebase에 로그인할 수 있습니다. 내가 사용하는 코드는 다음과 같습니다.

으아악

user变量中,你将拥有来自firebase身份验证的所有与用户相关的变量,例如uid,而从googleSignInAccount에서 표시 이름을 얻을 수 있습니다. 이것이 누군가에게 도움이 되기를 바랍니다!

P粉073857911

기본적으로 UserdisplayName属性为空。它取决于用户在创建或更新时是否设置了displayName。但默认情况下它是null.

어딘가에 업데이트하고 싶다면 displayName,可以使用以下方法:updateProfile:

으아악

Google 계정에 displayName,但在user.displayName中没有显示出来,那么你需要检查你传递给GoogleAuthProvider.credential()方法的idToken是否为null,确保你也传递了有效的idToken가 있다고 확신한다면.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!