본문 바로가기
  • 행복하게 오래오래 개발자로 살아가기
Old/OPEN API

twitter api 사용법

by yundev 2013. 3. 31.
반응형

트위터 api 사용법 정리
1. 동작 원리
1) 연동할 어플리케이션을 등록한다.
2) 등록하게되면 consumer key와 consumer secret을 받는다.
3) 명시된 Request Token url로 이 키를 이용해 요청하게 되면 인증 url로 가서 이 어플에서 계정 접근을 허용할 것인지 묻는다.
4) 그리고, 허용하게 된다면 Access Token url로 이동해 Access Token을 발급 받는다.
5) 이 받게 된 Access Token을 이용해서 해당 어플리케이션은 글쓰고, 정보를 불러올 수 있게 된다.
2. 예제 소스 : http://github.com/abraham/twitteroauth/downloads 
3. 어플리케이션 등록
트위터에 로그인하고 좌측 하단에 보면 Developers가 있다. 들어가서 로그인하고 create an application에서어 어플리케이션을 등록한다.
Application Details
Name : 어플리케이션의 이름
Description : 어플리케이션의 대략적인 설명
Web Site : 어플리케이션의 리얼 url(중요 - 실제로 사용하는 url을 입력한다. ex,로컬작업 시 - http://192.168.0.1:8080/twitterTest/)
Callback URL : Oauth인증을 사용하게 될 경우 인증 후 리다이렉팅될 페이지 URL 아주 중요.!!!, api lib에 기입해야하는 것과 일치해야함!!!!!!!  (ex, 로컬 작업시 - http://192.168.0.1:8080/twitterTest./favList.do)
그 다음 Recreate my access token을 클릭해서 access token을 받는다.
라이브러리에서는 callback.php이므로 예제를 테스트해볼 때에는 callback.php로 지정해주고, 바꾸고 싶으면 settings에 들어가서 바꾸면 된다.
Details에 있는 부분에서 consumer key, consumer secret을 볼 수 있고, callback url을 볼 수 있다.
4. 라이브러리에 있는 config.php에 있는 값들 입력한다.
consumer key, consumer secret, callback url을 정확하게 입력한다. 
5. /twitteroauth/twitteroauth.php에 인증 경로를 http://twitter.com/oauth/access_token ~ .. 앞에 api.를 뺀다.
6. index.php를 실행시킨다. 그러면 출력이 될 것이다. 
7. index.php라는 소스에서 $content = $connection->get('account/verify_credentials'); 라는 부분이 있는데, 이 부분은 twitteroauth.php에서 get함수를 보면 $url, $parameters로 값을 받으므로 
$connection->get('url','parameter')로 구성이 된다. 

twitter api에서 Resource URL : http://api.twitter.com/1/account/verify_credentials.format 라고 되어 있는 것 중에 account/verify_credentials 부분을 적으면 되고, 
넘길 파라미터가 있는 경우 $connection->post('friendships/create', array('id' => 9436992)); json 형식의 배열 값으로 parameter로 전달한다. 
$connection->post,get,delete이렇게 있으므로 twitteroauth.php 에서 함수를 찾아 확인 후 사용하면 된다.
여기에 있는 설명 외에 함수들도 tiwtteroauth.php에 있으므로 참고........

8. 예제를 출력해보면 json형태의 배열로 출력이 된다. 
이를 자신이 원하는 값만 가지고 와서 출력하려면 이는 오브젝트형태이므로 값을 가지고 올 때,
$screen_name= $content[0]->screen_name; 이와 같은 형태을 따른다.
->로 노드 접근.
* 여기서 드는 의문점 ; facebook은 $content[o][id]이 와 같은 형태(?)로 가지고 오는데 이와 차이점은?
이중배열, 다중배열, 다차원 배열에서 json값 가지고오기, xml값 가지고 오기 => 이 부분 공부 더하기.

* tiwtter는 euckr의 charset형태로 값을 가지고 오지 않으므로 euckr형태로 값을 보내거나 받을 때 utf-8로 값을 바꾸어줘야한다.
* 사용자 검색은 oauth 인증을 받아야 검색이 가능하다...로그인을 하지 않고 친구 검색을 할 수 없다.

반응형

'Old > OPEN API' 카테고리의 다른 글

open api 링크들  (0) 2013.03.31
유튜브, 구글리더, 페이스북 검색 api  (0) 2013.03.31
api 관련 사이트  (0) 2013.03.12
야후 날씨 API  (0) 2013.03.11
날씨 API 관련 사이트  (0) 2013.03.11