--------------------------------[kakao_index.php]--------------------------------
// 카카오 개발자 사이트에서 발급받은 클라이언트 ID와 시크릿을 입력하세요.
$client_id = 'xxxxxxxxxxxxxxxxxxxxxxxxx';
// 카카오 로그인 콜백 URL을 입력하세요.
$redirect_uri = 'https://kakaonara.co.kr/kakao_callback.php';
// 카카오 로그인 페이지로 리다이렉트합니다.
$authorize_url = 'https://kauth.kakao.com/oauth/authorize?' . http_build_query([
'client_id' => $client_id,
'redirect_uri' => $redirect_uri,
'response_type' => 'code',
]);
--------------------------------[kakao_callback.php]--------------------------------
$client_id = 'xxxxxxxxxxxxxxxxxxxxxxxxx';
$client_secret = 'lHyyyyyyyyyyyyyyyyyyyyyg';
$redirect_uri = 'https://kakaonara.co.kr/kakao_callback.php';
if (isset($_GET['code'])) {
$code = $_GET['code'];
$token_url = 'https://kauth.kakao.com/oauth/token';
$token_params = [
'grant_type' => 'authorization_code',
'client_id' => $client_id,
'client_secret' => $client_secret,
'redirect_uri' => $redirect_uri,
'code' => $code,
];
$ch = curl_init($token_url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $token_params);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$token_response = curl_exec($ch);
// cURL 오류 정보 출력
if (curl_errno($ch)) {
echo 'cURL 오류: ' . curl_error($ch);
}
curl_close($ch);
$token_data = json_decode($token_response, true);
if (isset($token_data['access_token'])) {
$api_url = 'https://kapi.kakao.com/v2/user/me';
$api_params = [
'access_token' => $token_data['access_token'],
];
$ch = curl_init($api_url . '?' . http_build_query($api_params));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$user_response = curl_exec($ch);
curl_close($ch);
$user_data = json_decode($user_response, true);
echo '<h2>사용자 정보</h2>';
echo '<pre>';
print_r($user_data);
echo '</pre>';
} else {
echo '액세스 토큰을 가져오는 데 실패했습니다.';
}
} else {
echo '코드를 받아오지 못했습니다.';
}
echo "<a href='$authorize_url'>카카오 계정으로 로그인</a>";
결과
[액세스 토큰을 가져오는 데 실패했습니다.]
이렇게 나와요 어디를 체크해야 할까요?
Redirect URI 확인했고 팀원도 로그인했음
참고로! 처음 몇번은 친구목록이 나왔습니다.
id :1010838
$client_id = ‘a0914fd445ed6c23b09fe5358e817b78’;
문의 시, 사용하시는 개발환경과 디벨로퍼스 앱ID를 알려주세요.