Google Social login user birthday
google auth λ‘ λ‘κ·ΈμΈν μ μ μ μλ μμΌμ κ°μ Έμ¬ μ μλ λ°©λ²μ κΈ°λ‘ν©λλ€.
λ‘κ·ΈμΈ ν λ€μμ μλ μμΌμ κ°μ ΈμμΌ νλ μν©μ΄λ€.
μ§κΈμ κ΅¬κΈ λ‘κ·ΈμΈν΄μ λ°μ accessToken μΌλ‘ κΈ°λ³Έ νλ‘ν μ 보λ λ°μμ€κ³ μλ€.
api: https://www.googleapis.com/oauth2/v2/userinfo
google OAuth docs linkλ₯Ό 보면 email, family_name, gender, hd (host domain), id, link (profile), locale, name, picture, verified_mail μ 보λ΄μ€λ€.
μ¬κΈ°μ λ΄κ° μνλ μλ μμΌμ΄ μλ€.
μλ μμΌμ λ°μ μ μλ google api λ₯Ό κ²μν΄λ³΄λ people google api κ° μμκ³ , google cloud console μ λ€μ΄κ° api λ₯Ό enable μ²λ¦¬ν΄μ£Όκ³ νΈμΆνλ€.
const URL = 'https://people.googleapis.com/v1/people/me?personFields=birthdays'; // people.googleapis.com const moreInfo = firstValueFrom( this.httpService.get(URL, { headers: { Authorization: `Bearer ${accessToken}`, }, }), ); const test = await moreInfo.then((res) => { console.log(res.data); return res.data; });
people api λ₯Ό μ¬μ©νλ©΄ μλ μμΌμ λ°μ μ μλ€κ³ ν΄μ μμ²λΌ νΈμΆνμμΌλ κ²°κ³Όλ₯Ό μ°μ΄λ³΄λ μλ μμΌμ΄ λμ€μ§ μμλ€.
console.log κ²°κ³Ό { resourceName: 'people/113614206436998753985', etag: '%EgQBBy43GgQBAgUH' }
κ³μ μ 보μ λ€μ΄κ° 보λκΉ μλ μμΌ μ€μ μ΄ μ λμ΄ μμλ€.
κ·Έλμ μ€μ μ νκ³ λ€μ λ‘κ·ΈμΈν΄λ³΄λ μλμ²λΌ birthdays κ° μ λμ΄μ νμΈνλ€.
birthdays[0].date λ₯Ό μ°μ΄λ³΄λ©΄
{ year: 1990, month: 4, day: 12 } λ‘ λμ΄ μλ€.
κ΅¬κΈ κ³μ μ μ΄λ―Έ μλ μμΌ μ λ³΄κ° λ€μ΄μκ³ μ μ κ° μμ μ μλ μμΌ κ³΅κ° λ²μλ₯Ό Anyone μΌλ‘ ν΄λμλ€λ©΄ μ°λ¦¬κ° μλ μμΌμ λ°μ λ³Ό μ μμμ΄ νμΈλμλ€.