개발

iOS Swift Firebase Auth Twitter 로그인 팁

소소ing 2021. 4. 7. 18:36
반응형

Firebase 인증을 이용하여 Twitter 로그인 이용시 OAuth를 이용하게 된다.

이때 accessToken과 secret 값이 필요한데 가이드 상에서는 주석으로 다음과 같이 적혀있다.

 

provider.getCredentialWith(nil) { credential, error in
      if error != nil {
        // Handle error.
      }
      if credential != nil {
        Auth().signIn(with: credential) { authResult, error in
          if error != nil {
            // Handle error.
          }
          // User is signed in.
          // IdP data available in authResult.additionalUserInfo.profile.
          // Twitter OAuth access token can also be retrieved by:
          // authResult.credential.accessToken
          // Twitter OAuth ID token can be retrieved by calling:
          // authResult.credential.idToken
          // Twitter OAuth secret can be retrieved by calling:
          // authResult.credential.secret
        }
      }
    }

 

하지만 authResult 값에서 바로 accessToken, idToken, secret 값에 접근할 수 없고 

authResult 데이터 중 authResult.credential 를  OAuthCredential 타입으로 변환해 주어야 한다.

 

// 사용 예시

if let credential = result?.credential as? OAuthCredential,

    let accessToken = credential.accessToken,

    let secret = credential.secret

{

 

}

반응형