이 문서는 Kakao SDK for JavaScript(이하 JavaScript SDK)의 v1(2.0.0 미만 버전)에서 v2(2.0.0 이상 버전)로 업그레이드하는 사용자를 위한 참고 정보를 안내합니다.
지원하는 웹 브라우저 중 Internet Explorer(이하 IE)의 최소 지원 버전이 11로 변경되었습니다. IE 9, 10 버전에 대한 지원이 필요한 경우, Legacy JavaScript SDK를 사용해야 합니다.
JavaScript SDK v2는 script
태그 내부의 SDK 파일 경로에 버전을 명시해야 합니다.
integrity
는 해시(Hash)값이 일치하는 스크립트(Script) 파일만 브라우저에서 실행을 허용하는 Subresource Integrity (SRI)를 위한 속성으로, 보안 강화를 위해 사용을 권장합니다. JavaScript SDK 버전별 integrity
값은 다운로드에서 확인 및 복사할 수 있습니다.
<!-- Before -->
<script src="https://t1.kakaocdn.net/kakao_js_sdk/v1/kakao.min.js"></script>
<!-- After -->
<script src="https://t1.kakaocdn.net/kakao_js_sdk/${VERSION}/kakao.min.js"
integrity="${INTEGRITY_VALUE}" crossorigin="anonymous"></script>
JavaScript SDK v2의 함수는 Promise
객체를 반환합니다. Legacy JavaScript SDK에서 지원하던 success
, fail
, always
콜백 파라미터는 Promise.then()
, Promise.catch()
메서드로 변경해야 합니다. 아래 예시와 기능별 문서의 내용을 참고합니다.
// Before
Kakao.API.request({
url: '/v2/user/me',
success: function(response) {
console.log(response);
},
fail: function(error) {
console.log(error);
},
});
// After
Kakao.API.request({
url: '/v2/user/me',
})
.then(function(response) {
console.log(response);
})
.catch(function(error) {
console.log(error);
});
JavaScript SDK v2는 보안 권고사항에 따라, 클라이언트에서 액세스 토큰을 발급받는 '팝업 방식으로 로그인' 관련 함수를 지원하지 않습니다. 대신 Kakao.Auth.authorize()
함수를 사용해야 합니다. 해당 함수에 대한 자세한 내용은 카카오 로그인을 참고합니다.
기능 | JavaScript SDK v1 | JavaScript SDK v2 |
---|---|---|
카카오 로그인 | Kakao.Auth.login() Kakao.Auth.createLoginButton() Kakao.Auth.loginForm() Kakao.Auth.autoLogin() |
Kakao.Auth.authorize() |
서비스 이름 변경과 관련된 일부 모듈명과 API 요청 URL이 변경되었습니다. 아래 표와 기능별 문서를 참고합니다.
기능 | JavaScript SDK v1 | JavaScript SDK v2 |
---|---|---|
카카오톡 공유 | Kakao.Link |
Kakao.Share |
카카오톡 채널 | Kakao.PlusFriend |
Kakao.Channel |
카카오톡 채널 관계 확인하기 | /v1/api/talk/plusfriends |
/v1/api/talk/channels |