카카오 메시지 링크 클릭시 401 에러

ID 767283

카카오 메시지를 고객에게 발송했는데, 일부 고객이 메시지 내 링크를 클릭하면 아래와 같은 오류가 노출되며 페이지가 열리지 않습니다.

Client error: GET https://kapi.kakao.com/v2/user/me resulted in a 401 Unauthorized response:
{“msg”:“no authentication key!”,“code”:-401}

관련해서 카카오비즈니스 쪽에 문의 했더니 아래와 같은 답변을 받아 문의합니다.

안녕하세요.
문의하신 오류는 카카오 로그인 API에서 발생하는 오류로 확인됩니다.
관련 문의는 아래의 데브톡으로 문의해 주시기 바랍니다.

※ 데브톡
https://devtalk.kakao.com/c/kakao-sync/115

감사합니다.

=============

카카오비즈니스 측에 문의했을 때, 해당 오류는 카카오 로그인 API에서 발생한 문제라고 안내받았으며, 관련 문의는 데브톡을 통해 진행하라는 답변을 받았습니다.

이에 다음 사항을 확인드리고자 합니다.

  1. 401 Unauthorized 오류가 발생하는 구체적인 원인 (예: 인증키 누락, 토큰 만료, 권한 설정 문제 등)
  2. 메시지 링크 클릭 시 일부 고객에게만 해당 오류가 발생하는 이유
  3. 해결을 위해 어떤 설정(인증키/토큰/연동 방식 등)을 점검하거나 수정해야 하는지

확인 부탁드립니다. 감사합니다.

안녕하세요.

확인을 위해 앱 ID 부탁드립니다.


앱ID
https://developers.kakao.com/ 의 내 애플리케이션에 표시되는 ID 값 입니다.
숫자로된 ID 입니다
ex) 123456

[@tim.l @woody.ho]

안녕하세요.

자세한 확인을 위해 메시지 링크 공유 부탁드리며, 캡처 이미지가 있으신 경우 함께 부탁드립니다.

ID 767283

이거 상단에 기입해 뒀는데 이거 아닌가요?

https://www.fashionstart.net/goods/event_sale.php?sno=350
https://www.fashionstart.net/goods/event_sale.php?sno=349

추가 정보 전달드립니다.

표시된 메시지는 회원님 서비스가 직접 alert으로 표시한 건인데요
회원님 서비스의 구현상 문제로 카카오와 무관합니다.

원인

회원님 서비스에 카카오톡 인앱브라우저로 접근 하면,
REST API 방식의 카카오 로그인 인가코드 요청 페이지로 자동 리디렉션 하고 있습니다.

이 때, prompt=none 파라미터를 사용, 카카오톡에서 자동로그인을 시도 합니다.
카카오톡에서 자동로그인은 회원님 디벨로퍼스 앱에 이미 연결된 사용자를 대상으로 하는 기능으로,
연결되지 않은 사용자는 redirect_uri에 인가코드 대신 다음과 같이 오류 메시지를 전달합니다.

https://m.fashionstart.net:443/member/kakao/kakao_login.php?code=code&error_description=user%20consent%20required.&encode_state=1&state=%7B%22kakaoType%22%3A%22autoLogin%22%2C%22returnUrl%22%3A%22https%3A%5C%2F%5C%2Fm.fashionstart.net%5C%2Fgoods%5C%2Fevent_sale.php%3Fsno%3D350%22%7D&error=consent_required

이어서, redirect_uri를 처리하는 회원님 서비스가 이를 처리하지 못하여 alert를 직접 띄우는 응답을 하였습니다.

해결

prompt=none 파라미터를 사용, 카카오톡에서 자동로그인 기능은
회원님 앱와 연결되지 않은 사용자인 경우 redirect_uri로 오류를 전달하기에 이러한 경우 일반적인 카카오 로그인을 진행할 수 있도록 처리부탁드립니다.