Resp Api 인가 코드 질문입니다

처리 방식은 서비스 개발 및 운영에 편리한 방식으로 선택하시면 되기에 해당 문의 하신바와 같이 처리해도 됩니다.

다만, 게임의 경우 API 이용이 제한되며, 카카오게임즈를 통해 사용하셔야만 합니다.

1개의 좋아요

넵 감사합니다.

한가지 더 질문이 있는데 괜찮으신가요?
카카오 싱크를 통한 카카오톡 자동 로그인을 통해서 로그인 시키려고 하는데

https://kauth.kakao.com/oauth/authorize?response_type=code&client_id=beac02127d170c4783e25edef2585ab5&redirect_uri=https://skin-10.kr/app/kakaologincode&prompt=none 이렇게 들어가면 인가 코드가 없다고 나오는데 서버쪽 소스코드는

string result = string.Empty;
string authCode = string.Empty;
JKakao json = new JKakao();

        try
        {
            // Request.QueryString을 사용하여 code 파라미터를 가져옵니다.
            string authcode = Request.QueryString["code"];
            // authcode가 null 또는 빈 문자열인 경우 처리
            if (string.IsNullOrEmpty(authcode))
            {
                result = "인가 코드가 없습니다.";
                authCode = "";
            }
            else
            {
                result = "성공";
                // 인가 코드를 content 변수에 저장합니다.
                authCode = authcode;
            }
        }
        catch (Exception ex)
        {
            result = string.Format("{0}", ex.Message);
        }

이런식으로 작성하고 있습니다.

prompt=none 설정 시, 다음의 경우에 redirect_uri 로 인가코드(code) 대신 오류가 전달 됩니다.
(ex, www.your.redirect.uri/?error=...)

  1. 현재 브라우저에 유효한 카카오 계정 세션이 없는 경우
  2. 유효한 카카오 계정 세션이 있지만, 서비스에 연결되지 않은(한번호 카카오 로그인 하지 않은) 경우

그럼 카카오톡에서 로그인 정보를 가져오기 위해서는
&prompt=none 을 &prompt=login으로 수정해야하는건가요?

기본적으로 해당 파라미터를 사용하지 않으며 아래 목적을 위해서만 사용됩니다.

login: 기존 사용자 인증 여부와 상관없이 사용자에게 카카오계정 로그인 화면을 출력하여 다시 사용자 인증을 수행하고자 할 때 사용, 카카오톡 인앱 브라우저에서는 이 기능이 제공되지 않음
none: 사용자에게 동의 화면과 같은 대화형 UI를 노출하지 않고 인가 코드 발급을 요청할 때 사용, 인가 코드 발급을 위해 사용자의 동작이 필요한 경우 에러 응답 전달
create: 사용자가 카카오계정 신규 가입 후 로그인하도록 할 때 사용, 카카오계정 가입 페이지로 이동 후, 카카오계정 가입 완료 후 동의 화면 출력
select_account: 카카오계정 간편 로그인을 요청할 때 사용, 브라우저에 카카오계정 로그인 세션이 있을 경우 자동 로그인 또는 계정 선택 화면 출력

모바일 웹에서 카카오 로그인 시, 카카오톡으로 로그인 되게 하시려면
JS SDK의 간편 로그인 기능을 사용하셔야 합니다.

JavaScript | Kakao Developers JavaScript - 간편 로그인

자바 스크립트 말고는 resp api 카카오톡 간편 로그인은 안되는건가요?(Gpm.WebView) 방식으로 열고 있습니다.

아쉽지만, 웹 환경에서 카카오톡 가편 로그인 기능은 JS SDK 사용 필수 입니다.

SDK에서 카카오톡 로그인에 필요한 유니버셜링크 및 앱 스킴 처리가 이루어지며, 사용자의 톡 인증상태를 확인하기 위한 백그라운드 작업이 진행됩니다. 이러한 앱-웹간 필요한 처리를 서비스에서 직접 구현하실수는 없습니다.

넵 감사합니다.