728x90

카카오 소셜 로그인을 구현하면서, 키 선택에서부터 난관에 봉착했다.

아무 키나 쓰면 안되고 내가 구현하려는 서비스의 성격과, 환경을 고려하여 선택하고 그에 따라 구현되는 카카오 로그인의 형태가 많이 달라지는 것을 알았다.

 

나는 이 부분이 뭔가 구체적으로 이해되지 않아서 공부하면서 정리해보려 한다.

 

  • 네이티브 앱 키: Android, iOS SDK에서 API를 호출할 때 사용합니다.
  • JavaScript 키: JavaScript SDK에서 API를 호출할 때 사용합니다.
  • REST API 키: REST API를 호출할 때 사용합니다.
  • Admin 키: 모든 권한을 갖고 있는 키입니다. 노출이 되지 않도록 주의가 필요합니다.

우선 카카오 개발자 홈페이지에서 기재해둔 설명이다. 

 

1. 네이티브 앱 키 : 이건 네이티브 즉, 아이폰이면 아이폰 안드로이드면 안드로이드! 각 모바일에 특성화가 되어있는 것이 네이티브앱이다. 즉 ios -> swift 언어 /  안드로이드->kotlin 언어  / 혹은 (expo를 쓰지 않는) react-native 혹은 flutter같은 하이브리드 앱에서 사용해야하는 키이다. 해당 키는 SDK 설정 등 별도의 방법이 있고, 이를 통해서 앱 -> 앱 이렇게 서로 통신이 가능하다. 

 

가령 우리가 앱에서 카카오 로그인을 하려 할때, 카카오 앱 자체를 열게 하는 것이다.

 

실제로 RN에서는 자체적으로 라이브러리까지 있을 정도로 잘 정리 되어있다.

 

해당 방법은 기존에 우리가 PC에서 진행했던 소셜로그인 방식이 아닌, 프론트 사이드로 진행되는 소셜로그인으로, DB에 데이터를 저장하는 방식 외에 모든 것이 client에서 진행된다.

 

2. javascript 키 : 이는 웹에서 앱을 부르려 하는 것이다. 보통 모바일 웹에서 해당 방법을 사용하며, 웹 -> 앱 통신 방법이다.

여기서 핵심은 RN이더라도 expo를 쓴다면 네이티브 SDK를 지원하지 않아서 굳이 SDK를 통해서 앱과 깔끔하게 통신하고 싶다면 해당 방법을 써야 한다.

 

이 또한 SDK로 구현되는 것이라 프론트 사이드의 소셜로그인 코드가 구현되어야 한다.

 

참고 링크

medium.com/@gale.lee/expokit-a70ce2724768

devtalk.kakao.com/t/react-native-expo/62769

medium.com/@panicrooms0/%EC%B9%B4%EC%B9%B4%EC%98%A4-kakao-%ED%94%84%EB%A1%9C%ED%95%84-profile-api-%EC%97%B0%EB%8F%99%ED%95%98%EA%B8%B0-js-javascript-a157db9fa8dc

m.blog.naver.com/PostView.nhn?blogId=hjinha2&logNo=221176502285&proxyReferer=https:%2F%2Fwww.google.com%2F

 

3. REST API키 : 흔히 우리가 아는 소셜로그인 구현 방식이다. 웹 -> 웹 통신이다.

728x90

+ Recent posts