티스토리 뷰

웹프로그래밍

미투데이 API 연동

공허공자 2011. 7. 21. 17:34
1. 애플리케이션 키 발급
애플리케이션 키는 발급 받으시려는 분은 애플리케이션키 발급 요청 페이지에서 신청하세요 (로그인하셔야 합니다.)


2. 사용자 인증
메뉴얼 = http://www.dev.naver.com/openapi/apis/me2day/me2api_intro#metwo3 
메뉴얼 작성자 맘이었겠지만 저거 보고 이해가 힘들었음.

2-1. 웹 기반 쉬운 인증
인증토큰요청 주소는 http://me2day.net/api/get_auth_url<format>
<format>은 응답형식으로 .json 또는 .xml 을 지정. 기본값은 xml

http://me2day.net/api/get_auth_url.json 으로 요청한 경우

{
  "url": "http:\/\/me2day.net\/api\/auth?token=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
  "token": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
}

http://me2day.net/api/get_auth_url.xml 로 요청한 경우

<?xml version="1.0" encoding="UTF-8"?>
<auth_token>
  <url>http://me2day.net/api/auth?token=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</url>
  <token>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</token>
</auth_token>
응답 중 url 값을 파싱하여 그곳으로 리다이렉트 시켜주면
미투데이측 사용자 인증 화면이 뜬다.

로그인 > 수락 하면
애플리케이션키 관리 페이지에 지정했던 콜백URL로 미투데이측에서 아래의 값을 쿼리스트링으로 붙여서 리다이렉트 시켜준다.
token: get_auth_url시 생성되 전달받은 인증토큰
user_id: 현재 로그인한 사용자의 사용자 아이디
user_key: me2API를 사용할 때 필요한 me2API 사용자 키. 만약 result 값이 false인 경우 값이 지정되지 않습니다.
result: 인증 결과. 사용자가 어플리케이션의 접근을 허용한 경우 true, 그렇지 않은 경우 false 가 지정됩니다.
위의 값 중 token 은 개념치 않는다. 미투데이 인증은 2011-07-21 현재 oAuth가 아니기 때문이다.

result 값이 false 일 경우
오류를 뿜어주게 만들고 끝내자.

result 값이 true 일 경우
token 역할을 하는 인증키를 만들어야 한다.

인증키 만드는 공식은 아래와 같다고 메뉴얼 초입에 나온다
nonce = 8자리 사용자 정의 랜덤 문자열
인증키 => nonce + md5(nonce + user_key)

공식대로 잘 만들었다면 인증 테스팅을 해보자.
uid = user_id
ukey = 인증키
akey =  애플리케이션키
http://me2day.net/api/noop?uid=codian&ukey=XXXXXXXXXXXXXXXX&akey=XXXXXXXXXXXXXXXX
이제 앞으로 메뉴얼에 인증이 필요하다고 나오는 미투데이API 사용시 저3개를 붙이면 됨.


3. 예제

3-1. 글 삭제 요청

http://me2day.net/api/delete_post.xml?uid={사용자 아이디}&ukey={인증키}&akey={앱키}

댓글