코드이그나이터 기반 PHP 오픈소스 게시판 : 씨아이보드

[씨아이보드] 소셜로그인 네이버로그인 안될때 해결방법

다른 소셜로그인은 정상작동하는데


네이버로그인에서만 회원가입과 요청정보까지 정상적으로 받았음에도 (정보제공동의창 에서 동의를 했음에도)


'로그인에 실패하였습니다' 알럿이 뜰 때 해결방법입니다.


application/controller/social.php 350줄 부근 

function naver_login() 함수 안에

if($this->session->userdata('naver_access_token')) 이 if문 안에

  $url = 'https://apis.naver.com/nidlogin/nid/getUserProfile.xml';


$ch = curl_init();

curl_setopt ($ch, CURLOPT_URL, $url);

curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);

curl_setopt ($ch, CURLOPT_SSLVERSION, 1);

curl_setopt ($ch, CURLOPT_HEADER, 0);

curl_setopt ($ch, CURLOPT_HTTPHEADER, array('Authorization: Bearer ' . $this->session->userdata('naver_access_token')));

curl_setopt ($ch, CURLOPT_POST, 0);

curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);

curl_setopt ($ch, CURLOPT_TIMEOUT, 30);

curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);

$result = curl_exec($ch);

curl_close($ch);


$xml = simplexml_load_string($result);


$naver_id = (string) $xml->response->enc_id;

$email = (string) $xml->response->email;

$nickname = (string) $xml->response->nickname;

$profile_image = (string) $xml->response->profile_image;

$age = (string) $xml->response->age;

$gender = (string) $xml->response->gender;

$id = (string) $xml->response->id;

$name = (string) $xml->response->name;

$birthday = (string) $xml->response->birthday;


이부분을

$url = 'https://openapi.naver.com/v1/nid/me';


$ch = curl_init();

curl_setopt ($ch, CURLOPT_URL, $url);

curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);

curl_setopt ($ch, CURLOPT_SSLVERSION, 1);

curl_setopt ($ch, CURLOPT_HEADER, 0);

curl_setopt ($ch, CURLOPT_HTTPHEADER, array('Authorization: Bearer ' . $this->session->userdata('naver_access_token')));

curl_setopt ($ch, CURLOPT_POST, 0);

curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);

curl_setopt ($ch, CURLOPT_TIMEOUT, 30);

curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);

$result = curl_exec($ch);

curl_close($ch);


$json = json_decode($result);


$naver_id = (string) $json->response->id;

$email = (string) $json->response->email;

$nickname = (string) $json->response->nickname;

$profile_image = (string) $json->response->profile_image;

$age = (string) $json->response->age;

$gender = (string) $json->response->gender;

$id = (string) $json->response->id;

$name = (string) $json->response->name;

$birthday = (string) $json->response->birthday;


이렇게 바꿔주시면 정상작동합니다.


0
0
이 글을 페이스북으로 퍼가기 이 글을 트위터로 퍼가기 이 글을 카카오톡으로 퍼가기 이 글을 카카오스토리로 퍼가기 이 글을 밴드로 퍼가기

팁&테크

번호 제목 글쓴이 날짜 조회수
공지 Github 운영을 시작합니다 +9 icon 관리자 11-19 8,076
공지 씨아이보드 3 배포 안내 +18 icon 관리자 11-09 9,623
52 씨아이보드 소셜로그인 네이버로그인 안될때 해결방법 플라이이글스 09-22 113
51 코드이그나이터 smarteditor 사진업로드가 안되는 현상 해결방법(400error) 플라이이글스 08-11 197
50 씨아이보드 게시판 첨부 이미지 클릭시 새창 안뜨고 오리지날 이미지로 확대축소만 하… 옹박 04-23 377
49 씨아이보드 install 시 step4 에서 데이터베이스 접속 실패 뜨시는분? +2 왕돌 09-26 1,327
48 씨아이보드 smslib 장문 문자 발송 수정 하마쿵 04-11 1,780
47 씨아이보드 게시판 post 하단에 다음글, 이전글 제목 나오기 whalam 04-09 1,331
46 씨아이보드 다음 juso.js 파일이 로드되지 않았습니다. +1 ceoseo 12-04 1,744
45 서버 APM AUTO INSTALL V 0.2.9 +4 icon 아파치 11-26 1,438
44 씨아이보드 일단 erd그렸습니다. +13 icon Rido 11-10 3,048
43 씨아이보드 CIBOARD 설치가 안됩니다. 답변 부탁드립니다. +4 백경우 11-01 1,401
42 씨아이보드 스마트에디터 파일업로드시 도메인부분을 제거하고 이미지 태그 등록 +4 꽃이피는첫걸음 10-18 1,578
41 씨아이보드 비밀글 열람 권한 지정 옵션 꽃이피는첫걸음 10-15 1,041
40 씨아이보드 post에 글주소 클립보드 복사기능 대체(크롬에서 정상작동) +1 꽃이피는첫걸음 10-05 1,043
39 씨아이보드 일반페이지(document)에서 이미지맵 적용하기 꽃이피는첫걸음 10-02 730
38 씨아이보드 CIBOARD에 summernote 에디터 추가 +3 BOSS 08-03 1,445
37 씨아이보드 날짜를 연도까지 나오게 하기.. +1 마젠토 11-10 2,698
36 씨아이보드 디렉토리 구조 이해하기 +4 icon 해피정 08-17 4,948
35 씨아이보드 utf8mb4 로 설치하기 (2017-08-11 수정) icon 해피정 08-11 2,409
34 씨아이보드 eclipse (neo, oxygen) 에서 CI, CIBOARD au… 하마쿵 07-25 2,484
33 씨아이보드 강제로 www 없애고 https로 이동하게 하기 +1 싸나이 07-17 3,321