카카오 로그인시 access token 오류

Javascript로 로그인을 구현하려고 하는데
등록한 앱키를 정확하게 Kakao.init(’’) 안에 넣어놓고 실행 시켰는데,

다음과 같은 fail responser가 뜨고 로그인이 안되네요.
{“code”:-401,“msg”:“this access token does not exist”}

* index.html   
 <body ng-app="d2dEssay" >
 <ion-pane>
 <ion-nav-bar class="bar-stable">
 <ion-nav-back-button>back</ion-nav-back-button>
</ion-nav-bar>
<ion-nav-view></ion-nav-view>
</ion-pane>

<script>Kakao.init('f20f9915adae4e2d4a4c617dd40cda87');</script>
                             
</body>

* JavaScript Code

$scope.popupKakaoLogin = function(){     
      Kakao.API.request({
        url: '/v1/user/me',
        success: function(res) {
          console.log("res in KakaoLogin = " , res);
          alert(JSON.stringify(res));
          $http.post(apiUrl + '/member/', res).then(function(res){
                // console.log(" res in loginCtrl => ", res);
                if(res.status === 201){
                    // console.log(" res in loginCtrl => ", res.config.data);
                    window.localStorage.setItem("login",  angular.toJson(res.config.data));
                    // Share.isLogin = true;
                  }
                });
        },
        fail: function(error) {
             console.log("error in KakaoLogin = " , error);
          alert(JSON.stringify(error))
        }
      });
  }

l

위의 코드로 보면 accessToken 을 얻는 과정이 없는 것 같은데요.accessToken은 어떻게 받으셨나요?

accessToken 받지 않고 이전에는 잘 됬었는데, 소스를 수정하고 다시 할려니 이런 문제가 발생하네요.
accessToken은 어떻게 받아야 하나요??;;

Kakao.Auth.setAccessToken(Kakao.Auth.getAcceessToken(), true);
이렇게 로그인 전에 셋팅하면 되는건가요?

아 되네요… 감사합니다… ^^

비슷한 증상을 겪고 있어서요… 혹시 어떻게 해결 하셨는지 기억나시나요…?

{“code”:-401,“msg”:“this access token does not exist”}
에러는 액세스 토큰 없이 API 요청한 것으로

kakao javascript SDK를 사용하신다면 아래와 같이 로그인 성공 후, 액세스 토큰 세팅 해주셔야합니다.

function loginWithKakaoPopUp() {
Kakao.Auth.login({
    success: function(authObj) {
        alert(JSON.stringify(authObj));
        Kakao.Auth.setAccessToken(authObj.access_token);
        //★ 추가 할 것 : 로그인 성공 후 처리 
    },
    fail: function(err) {
        alert(JSON.stringify(err))
    },
})

}

1개의 좋아요

2020.12.30 수정

  • 카카오 JavaScript SDK 에서 팝업 방식 로그인 호출 시 setAccessToken까지 수행됨
  • setAccessToken 없이 프로필 조회 같은 함수 호출 시 401에러 발생하므로 세팅 할 것