티스토리 뷰
네이버 로그인 연동을 로컬호스트에서 해보기로 한다. 그냥 이니시스 처럼 sample download로 간편하게 하면 좋은데... 그렇게 되어 있지는 않다.
그래서 매뉴얼 보면서 하나씩 해봐야 한다.
우선 https://developers.naver.com/ 를 간다.
https://developers.naver.com/products/login/api/api.md
네이버 로그인으로 간다.
상단 메뉴의 Application을 클릭한다.
https://developers.naver.com/apps/#/list
그냥 간단하게 로컬호스트에서 한다. 로컬세팅은 xampp로 하였다.
Application 등록 버튼을 클릭하여 application을 등록한다.
머 검수어쩌고 저쩌고 나오는데 나는 그냥 바로 어플리케이션 등록하고 로컬에서 바로 테스트했는데 잘 되었다.
application 등록 했으면 Client ID와 Client Secret 이 보일것이다. 이 2가지만 있으면 된다.
https://developers.naver.com/docs/login/api/api.md
네이버 로그인 API 명세를 보면 예제 소스들이 있다. (나는 PHP로 하였다.)
그냥 복사 하여 내 로컬에서 붙여넣기를 한다.
네이버 로그인 접근토큰 획득 예제는 2개의 파일로 구성되어 있습니다. (naverlogin.php, callback.php)
1. naverlogin.php
<?php
// 네이버 로그인 접근토큰 요청 예제
$client_id = "YOUR_CLIENT_ID";
$redirectURI = urlencode("YOUR_CALLBACK_URL");
$state = "RAMDOM_STATE";
$apiURL = "https://nid.naver.com/oauth2.0/authorize?response_type=code&client_id=".$client_id."&redirect_uri=".$redirectURI."&state=".$state;
?><a href="<?php echo $apiURL ?>"><img height="50" src="http://static.nid.naver.com/oauth/small_g_in.PNG"/></a>
2. callback.php
<?php
// 네이버 로그인 콜백 예제
$client_id = "YOUR_CLIENT_ID";
$client_secret = "YOUR_CLIENT_SECRET";
$code = $_GET["code"];;
$state = $_GET["state"];;
$redirectURI = urlencode("YOUR_CALLBACK_URL");
$url = "https://nid.naver.com/oauth2.0/token?grant_type=authorization_code&client_id=".$client_id."&client_secret=".$client_secret."&redirect_uri=".$redirectURI."&code=".$code."&state=".$state;
$is_post = false;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, $is_post);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$headers = array();
$response = curl_exec ($ch);
$status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
echo "status_code:".$status_code."
";
curl_close ($ch);
if($status_code == 200) {
echo $response;
} else {
echo "Error 내용:".$response;
}
?>
위에 있는대로 1. naver_login.php 를 만든다.
<?php
// 네이버 로그인 접근토큰 요청 예제
$client_id = "YOUR_CLIENT_ID";
$redirectURI = urlencode("http://localhost/naverlogin/callback.php");
$state = "RAMDOM_STATE";
$apiURL = "https://nid.naver.com/oauth2.0/authorize?response_type=code&client_id=".$client_id."&redirect_uri=".$redirectURI."&state=".$state;
?><a href="<?php echo $apiURL ?>"><img height="50" src="http://static.nid.naver.com/oauth/small_g_in.PNG"/></a>
여기서는 2가지 정보를 수정한다.
$client_id와 $redirectURI 2가지이다.
$client_id는 application 등록한데 가보면 있고 $redirectURI 는 본인이 받을 정보이다. 난 위와 같이 하였다.
naverlogin 폴더를 만들고 naverlogin.php 파일을 만들어 호출하면 위와 같이 나온다.
로그인 버튼을 누르면 네이버 창이 뜨면서 로그인하라고 나온다. 로그인 하면 callback.php가 호출되며
위와 같이 access_token정보가 찍힌다.
여기까지가 예제의 전부이다. 우리는 사용자 정보를 가져와야 하기 때문에 다음 글을 읽어야 한다.
회원 프로필 조회 API 명세는 다음글에서..
'KG이니시스 결제 통합인증,네이버 로그인' 카테고리의 다른 글
네이버 로그인 연동 - 회원 프로필 조회 API 명세 (0) | 2022.07.25 |
---|---|
파라미터의 데이터 설정이 잘못되었습니다.(신용카드 본인인증은 계약되지 않은 인증방법입니다. 상점에 문의해 주세요.) (0) | 2022.07.18 |
[spring] There is already 'Controller' bean method (0) | 2022.07.18 |
org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected excep (0) | 2022.07.18 |
kg이니시스 jsp 일반결제 연동 방법 (0) | 2022.07.10 |
- Total
- Today
- Yesterday
- 인포믹스
- ocajp
- 문자열
- ocjap
- proc
- JDBC
- Python
- 오라클
- MySQL
- xe addon
- EC
- C언어
- 이클립스
- webix
- XE
- 파이썬
- 포인터
- C
- XE3
- 자바 smtp
- 자바
- xe애드온
- 자바 셀레니움
- esql
- 프로씨
- KG
- ocpjp
- php
- 스크래핑
- 파싱
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |