이글은 XML-RPC기술을 이용한 JAVA 프로그램을 구현하여 네이버 블로그에 글을 등록하는 과정을 설명합니다. 일단 XML-RPC라는 기술부터 간단하게 알아보겠습니다.
■ XML-RPC란?
XML기반의 HTTP를 통한 간단하고 이식성 높은 원격 프로시저(Remote Procedure Call) 호출 방법이며 지원하는 언어가 JAVA외에 Perl, Python, C, C++, PHP 등 이며 운영체제는 Unix, Windows 등 가능합니다.
이와 비슷한 기술인 SOAP, JSON-RPC가 존재합니다. - 출처: 위키백과
■ 네이버블로그 API 연동
1. API연결암호 발급받기
네이버 블로그 관리자화면에서 메뉴/글/동영상 관리 > 플러그인/연동 관리 > 글쓰기 API설정에 들어가 API연결암호를 발급받고 URL, ID를 확인합니다.
네이버블로그 API정보 발급 |
2. JAVA프로그램 구현
API연결 URL를 설정합니다.
xmlrpcClientImpl.setServerURL(new java.net.URL(API_URL));
테스트용 호출프로그램 자체는 단순한것 같습니다. 네이버 블로그 API정보와 블로그 글등록을 위한 카테고리, 제목, 내용, 태그 등을 설정합니다. 내용을 넣을때는 텍스트 뿐만 아니라 HTML도 가능합니다.Map<String, String> contents = new HashMap<String, String>(); contents.put("categories", "상품소개"); contents.put("title", "테스트제목"); contents.put("description", "테스트내용"); contents.put("tags", "태그1, 태그2, 태그3, 태그4");
네이버에서 발급받았던 아이디, API연결암호를 설정 후 호출하면 등록된 글의 블로그 URL이 리턴됩니다.
List<Object> params = new ArrayList<Object>(); params.add(API_ID); params.add(API_ID); params.add(API_PASSWORD); params.add(contents); params.add(new Boolean(true)); XmlRpcClient client = new XmlRpcClient(); client.setConfig(config); String rsString = (String) client.execute("metaWeblog.newPost", params); System.out.println(rsString);이미지첨부같은경우는 별도의 이미지파일을 읽어와서 업로드 후 이미지주소를 리턴받아서 사용하면 됩니다.
File file = new File("이미지경로");
Vector<Object> params = new Vector<Object>();
params.addElement(new String(API_ID));
params.addElement(new String(API_ID));
params.addElement(new String(API_PASSWORD));
Map<String, Object> fileMap = new HashMap<String, Object>();
fileMap.put("name", file.getName());
fileMap.put("type", new MimetypesFileTypeMap().getContentType(file));
fileMap.put("bits", getFileByte(file));
params.addElement(fileMap);
Map<String, Object> res = (HashMap<String, Object>) xmlrpcClient.execute("metaWeblog.newMediaObject", params);
(String) res.get("url");
■ 테스트
프로그램을 사용하여 전송하면 정상적으로 블로그에서 확인이 가능합니다. 이렇게 프로그램으로 글을 등록할수 있는 개수는 하루에 200개만 등록제한 되어있습니다.
끝까지 봐주셔서 감사합니다.
댓글 없음:
댓글 쓰기