Daum Blog API 요청 방법 (XML-RPC)

Download Report

Transcript Daum Blog API 요청 방법 (XML-RPC)

MashupCamp2008 | 2008 01 13
Daum Open API
Blog API 소개
고영민
다음커뮤니케이션 커뮤니티개발2팀
Contents
 DNA에 정보 요청하기
 블로그 API가 제공하는 기능
 XML-RPC 이용
 Blog API 요청 방법 (XML-RPC)
서명키를 사용하지 않는 경우
서명키를 사용하는 경우
 인증 요청 변수
 Sample Application
2
DNA에 정보 요청하기
※ 인증키와 서명키는 2개가 셋트로 함께 필요합니다.
3
Daum Blog API가 제공하는 기능
서명키를 사용하지 않는 API / 인증키
호출 URL
http://apis.daum.net/blog/ArticleList.do
http://apis.daum.net/blog/ArticleView.do
http://apis.daum.net/blog/ArticleComment.do
http://apis.daum.net/blog/NewsCategory.do
http://apis.daum.net/blog/MyAlarmyArticle.do
http://apis.daum.net/blog/MyAlarmyArticleCmt.do
기 능
블로그 목록보기
블로그 글보기
블로그 댓글 목록
블로그가 만든뉴스 카테고리 (분류) ID
미니알리미 구독리스트
미니알리미 내글에 대한 반응
서명키를 사용하는 API / 인증키 + 서명키
호출 URL
http://apis.daum.net/blog/XMLRPC.do
기 능
블로그 글쓰기
블로그 글쓰기&파일첨부
블로그 글수정
블로거 뉴스 송부
블로그 댓글 쓰기
블로그 개설여부 확인
블로그명 중복체크
블로그 개설
호출 함수 (method)
daum.blog.openapi.newPost.execute
daum.blog.openapi.newPost.execute
daum.blog.openapi.modifyPost.execute
daum.blog.openapi.newPost.executeNewsReporter
daum.blog.openapi.newComment.execute
daum.blog.openapi.checkBlog.execute
daum.blog.openapi.checkBlogName.execute
daum.blog.openapi.makeBlog.execute
4
XML-RPC 이용
한글 도움말 : http://wiki.kldp.org/wiki.php/DocbookSgml/XML-RPC-HOWTO
원문 :http://www.xmlrpc.com/
5
XML-RPC 이용
method와 parameters  XML로 encode하여 호출
Encoded XML (XML-RPC Message)
<?xml version="1.0" encoding="UTF-8"?>
<methodcall>
<methodname>daum.blog.openapi.newPost.execute</methodname>
<params>
<param><value>subject</value></param>
<param><value>body</value></param>
<param><value>tag</value></param>
</params>
</methodcall>
XML-RPC Client Library 이용
PHP의 경우
XML-RPC Message 생성 (method & parameters) & XML-RPC 서버를 지정(URL)하여 Message 전송
Python의 경우
XML-RPC 서버를 지정하여 서버 객체 생성 & “server.call(method, args…)” 형태로 method를 호출
Java의 경우
XML-RPC 서버를 지정하고 method & parameter를 전송
6
Daum Blog API 요청 방법 (XML-RPC)
서명키를 사용하지 않는 API / 인증키
서비스 종류, 요청 변수  요청 URL
호출 url : http://apis.daum.net/blog/ArticleList.do
(블로그 목록보기)
Request Parameter : blogname (string | 블로그 이름)
요청 URL: http://apis.daum.net/blog/ArticleList.do?apikey=apikey&blogname=daum
요청 결과
http://apis.daum.net/blog/ArticleList.do?blogname=daum
Sample 코드
7
Daum Blog API 요청 방법 (XML-RPC)
서명키를 사용하는 API / 인증키 + 서명키
서비스 종류, 요청 변수  요청 URL
호출 url : http://apis.daum.net/blog/XMLRPC.do (공통)
사용 method : daum.blog.openapi.newPost.execute
Request Parameter : Vector 타입의 요구조건 (http://dna.daum.net/apis/blog 참고)
요청 URL: 아래와 같은 방법으로 생성합니다.
요청 URL 생성
Signkey (8455aac54a839a31a112c*************)
apiURL + apikey + signkey
http://apis.daum.net/blog/XMLRPC.do?apikey=ddbfc0faa0c8540bc**********
DaumOpenApiSign.sign(apiURL + apikey, "hmacsha1", signkey)
Xml rpc 호출 URL
http://apis.daum.net/blog/XMLRPC.do?apikey=ddbfc0faa0c8540bc**********
&ts=20080110084211
&nonce=471c4636a1248ec5
&sigalg=hmacsha1
&sig=5fe4328ee30721e9c2d100d900a********
DaumOpenApiSign ?
서명을 만들어내는 함수생성 코드가 DNA에 올라가 있습니다.
http://dna.daum.net/apis/HowToSign
8
Sample Application
http://apis.daum.net/blog/ArticleList.do
http://apis.daum.net/blog/ArticleView.do
http://apis.daum.net/blog/ArticleComment.do
http://apis.daum.net/blog/NewsCategory.do
http://apis.daum.net/blog/MyAlarmyArticle.do
http://apis.daum.net/blog/MyAlarmyArticleCmt.do
http://apis.daum.net/blog/XMLRPC.do
데모에 필요한 jar 파일들
블로그 목록보기
블로그 글보기
블로그 댓글 목록
블로그가 만든뉴스 카테고리 (분류) ID
미니알리미 구독리스트
미니알리미 내글에 대한 반응
블로그 글쓰기
블로그 글쓰기&파일첨부
블로그 글수정
블로거 뉴스 송부
블로그 댓글 쓰기
블로그 개설여부 확인
블로그명 중복체크
블로그 개설
daum.blog.openapi.newPost.execute
daum.blog.openapi.newPost.execute
daum.blog.openapi.modifyPost.execute
daum.blog.openapi.newPost.executeNewsReporter
daum.blog.openapi.newComment.execute
daum.blog.openapi.checkBlog.execute
daum.blog.openapi.checkBlogName.execute
daum.blog.openapi.makeBlog.execute
9
감사합니다. ^^
감사합니다