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
{
}
'개발' 카테고리의 다른 글
iOS Swift를 이용하여 화면 회전에 대한 이벤트 받기 (2) | 2021.06.14 |
---|---|
iOS WKWebView 비디오 인라인 재생 시켜 보기! (0) | 2021.04.20 |
iOS Swift UITextField 입력시 특수문자 제외방법 (0) | 2021.04.07 |
iOS 13 이후 위치 권한을 항상 받도록 설정하는 방법은? (0) | 2021.04.01 |
Swift 위치 권한 팝업 요청 및 단말기 현재 위치 가져오기 (0) | 2021.04.01 |