네이버 블로그 API ( XML-RPC metaWeblog) JAVA로 연동하기


네이버는 아쉽게도 아직까지 OAuth 기반의 블로그 API를 지원하지 않는다.

현재로써는 XML-RPC API만 사용가능함.



1. 네이버 블로그 관리화면에서 글쓰기 API 설정으로 들어간다.


 

 

 

2. 암호발급을 클릭


 




3. Apache XML-RPC 라이브러리를 다운받고 classpath 설정


http://archive.apache.org/dist/ws/xmlrpc/binaries/apache-xmlrpc-3.1.3-bin.zip


apache-xmlrpc-3.1.3-bin.zip




4. JAVA 샘플



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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
package com.naver.rpc;
import java.net.URL;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
 
import org.apache.xmlrpc.client.XmlRpcClient;
import org.apache.xmlrpc.client.XmlRpcClientConfigImpl;
 
 
public class XmlRpcNaverBlog {
 
    static final String API_URL = "https://api.blog.naver.com/xmlrpc";
 
    static final String API_ID = "userid";
    static final String API_PASSWORD = "api 연결암호";
    
 
    
 
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        
        try {
 
            XmlRpcClientConfigImpl config = new XmlRpcClientConfigImpl();
            config.setServerURL(new URL(API_URL));
            
            Map<StringString> contents = new HashMap<StringString>();
            contents.put("categories""게시판"); // 카테고리 텍스트
            contents.put("title""여기에 제목을 쓰고"); // 제목
            contents.put("description""여기에 내용을 쓰세요."); // 내용
            contents.put("tags""태그1, 태그2, 태그3"); // 태크 콤마로 구분한다.
 
            
            List<Object> params = new ArrayList<Object>();
            
            // 블로그ID를 넣으라는데 공백으로 해도 된다.
            params.add("아무거나 넣어도 된다");  
            
            // API ID
            params.add(API_ID);
            
            // API 암호
            params.add(API_PASSWORD); 
            
            // 블로그 컨텐츠 
            params.add(contents);
            
            // 공개여부 true이면 공개, false면 비공개
            params.add(new Boolean(true)); 
            
            XmlRpcClient client = new XmlRpcClient();
            client.setConfig(config);
            
            String rsString = (String) client.execute("metaWeblog.newPost", params);
            
            System.out.println(rsString);
            
        }catch(Exception e) {
            e.printStackTrace();
        }
 
    }
}
 
 

 

 

블로그에 새글을 작성하는 간단한 소스 예제...






:
Posted by 정규식