원격블로깅을 위한 또다른 방식 AtomPub

여태 블로그 원격업로드를 조사해보며, Metaweblog 기반의 XMLRPC만 작업을 해보았는데요~

일본쪽 유명블로그에 업로드하는 것을 알아보다보니 AtomAPI를 구현해야 될듯하여 정리하게 되었습니다.
아래의 문서는 http://mattn.kaoriya.net/web/20071106124750.htm 에서 발췌하여 기록합니다.

유명한 블로깅의 대부분은 원격에서 블로그를 업데이트 할 메커니즘을 제공합니다.
그 중에서도 일반적인 것이 일전에 말씀 드린 “XMLRPC”를 기반으로 한,

  1. Blogger API
  2. MetaWeblog API
  3. MovableType API

이렇게 3가지가 보편화 되어 있습니다.

현재 Blogger는 XMLRPC 방식이 아닌 Atompub를 사용하고 있습니다.
보안상 XMLRPC보다는 Atompub가 더 안전하기때문에 XMLRPC를 사용하는 사이트들은 가급적 사용을 자제시키려고 합니다.
네이버 블로그의 경우 아예 사용가능함에도 불구하고 언급도 잘 안해놓고 있는 것을 보면 알 수 있습니다.

XMLRPC의 경우는, 원격 메소드로 XML을 생성하여 블로그 게시물 제거 등을 실시하고 있지만 AtomPub의 경우 전송되는 XML 단위 자신이 문서가됩니다. 이 문서를 GET / POST (PUT) / DELETE 메서드를 사용하여 문서 (블로그)를 업데이트합니다.

AtomPub는 Atom 피드 끈을 정한 등록용 URI에 문서를 POST (PUT)하는 것으로 새 항목 기존 항목을 끈 정한 편집 URI에 POST (PUT)하는 것으로 항목을 업데이트하고 기존 항목의 편집 URI에 DELETE 메서드를 보내는 것으로 항목을 삭제합니다.

일부 서버에서 DELETE 메서드를 받아들이지 않는 것도 있기 때문에, “X – Http – Method – Override : DELETE”라는 헤더 DELETE 메서드와 동일한 작업을 수행할 수있는 것처럼되어있는 서버도 있습니다. 이 2 개의 API의 주요 차이점은 문서 형식 및 인증 방법을들 수 있습니다.

XMLRPC의 경우 각 메서드에서 사용자 ID 및 암호를 전달할 수 있습니다.
또한, XMLRPC에서 전송되는 XML 자신은 메서드 매개 변수를 포함, 그 안에는 사용자 ID와 암호를 포함하게됩니다.
따라서 이차적인 이용이 불가합니다.

하지만 AtomPub의 경우는 위에서 설명한대로 전송되는 XML 자신이 문서이기 때문에 재차 사용할 수 있습니다.
또한 인증 방법은 일반적으로 Basic 인증 또는 WSSE 인증이 사용되고 있으며 이를 통해 사용자 아이디와 비밀번호가 암호화 되어 전송되기때문에 XMLRPC보다는 안전하다고 할 수 있겠네요!

그럼 간략하게 인증방식에 대해 짚고 넘어가보도록 하겠습니다.

  1. Blogger 방식 : Basic인증 (https/http든 인증에는 지장이 없습니다. 다만 추후 https만 될 것이라고 예상)
  2. 고전적인 방식 : WSSE인증 (TypePad, Livedoor, Lovelog, So-net등에서 사용)
    1. TypePad, Livedoor, Lovelog : 블로그 관리화면에 Login 사용자 이름과 암호를 사용하여 WSSE 인증
    2. So-net : Atom API에 게시하기 위한 전용 비밀번호를 검색하고 이를 사용하여 WSSE 인증, 이름은 So-net에 로그인할 때의 사용자 이름이 아닌 So-net 블로그 별도로 설정한 사용자 이름을 사용합니다.
  3. 독자적인 방식 : WSSE인증 (Ameba)
    1. WSSE 생성 방법이 아메바 독자적인 것으로 보이지만 아마도 Atom 명세서를 오독하면서 구현했다고 생각됨

이렇듯 실제로 위와 같은 인증방식 이외에도 세부적으로 차이가 있고 그 부분을 다 고려하면 Atom API의 구현 방식의 종류는 무수히 많을 수도 있습니다. 하지만 대부분 고전적인 방식을 사용하고 있으니 참고하시면 될 것 같구요! WSSE 인증스펙에 대해 간략하게 설명 드리도록 하겠습니다.

  • Username : 해당 블로그에서 요구하는 사용자 아이디 및 이름
  • passwordDigest : base64 – SHA1(Nonce.Created.Password)를 연결하여 만들어 암호화 (Oauth 인증과 유사)
  • Timestamp : Nonce를 생성한 날짜 2012-12-31T00:00:00Z와 같은 형식 (ISO-8601)
  • Nonce : 클라이언트가 http요청을 할때 마다 고유하게 만들어진 임의의 식별자로 Atom API에서는 일반적으로 16진수의 임의의 자리수로 생성

이렇게 암호화에 대해서 간략하게 살펴보았습니다.
마지막으로 대부분의 블로그는 다음과 같은 API로 구현하고 있습니다.

아래 리스트는 일본쪽 블로그에 관련된 정보를 가져왔으니 대개의 형식이 아래와 같다고 생각하시면 됩니다.

블로그 제공 API 형식 진입점
teacup XMLRPC HTML http://white.ap.teacup.com/applet/ [username] / postmsgrpc
EGOIST 블로그 XMLRPC HTML http:// [blogid] .ebsystems.jp / xmlrpc.php
내 블로그의 처음으로 가진 blogid
FC2 블로그 XMLRPC HTML http://blog.fc2.com/xmlrpc.php
JUGEM XMLRPC HTML http:// [blogid] .jugem.jp / admin / xmlrpc.php
JustBlog Atompub HTML http://app.justblog.jp/t/atom/weblog/blog_id = blogid]
Livedoor Blog Atompub HTML http://cms.blog.livedoor.com/atom/blog_id = blogid]
MSN Space XMLRPC HTML https : / / storage.msn.com / storageservice / MetaWeblog.rpc
NetLaputa XMLRPC HTML http://blog.netlaputa.ne.jp/rpc/mt-xmlrpc.cgi
News Handler XMLRPC HTML http://blog.nettribe.org/xmlrpc.php
Seesaa 블로그 XMLRPC HTML http://blog.seesaa.jp/rpc/
WordPress XMLRPC HTML http://faq.wordpress.com/xmlrpc.php
Yahoo! 블로그 XMLRPC HTML http://api.my.yahoo.co.jp/RPC2
Blogger Atompub HTML http:// [blogid] .blogspot.com / feeds / posts / default
Blogger XMLRPC HTML http://blog.goo.ne.jp/xmlrpc.php
pwBlog XMLRPC HTML http://www.pwblog.com/xmlrpc
Vox Atompub HTML http:// [blogid] .vox.com / library / posts / atom.xml
는이라고북마크 AtomPub TEXT http://b.hatena.ne.jp/ [username] / atom /
Hatena 다이어리 Atompub Hatena 표기법 http://d.hatena.ne.jp/ [blogid] / edit
아메바 Atompub HTML http://ameblo.jp/servlet/_atom/blog/ [blogid]
코코 로그 XMLRPC HTML http://app.f.cocolog-nifty.com/t/api
도리코무 XMLRPC HTML http://blog.drecom.jp/api/xmlrpc
블로그 명 XMLRPC HTML http://app.blog.ocn.ne.jp/t/api/
PLAYLOG XMLRPC Wiki http://playlog.jp/_atom/blog/ [blogid]
0 teams the real dealA touchdown, wherein the player runs with the ball into the opposing team’s zone, or catches it there, earns the team 6 points and a ‘try’. In a try, the team can attempt to kick the ball over opposition’s crossbar, for a single point, or run and pass it into the end zone, for 2 points.. But it turned out “pygmy hippo” was a misleading term (no doubt coined by Cheap NFL Jerseys the crooked hippo pet industry) and Billy eventually grew too big to stay at the White House. At this point begins a string of events that would lead Billy to become more oakley sunglasses outlet influential in the hippo world than Coolidge was among the humans.. Food stamps are just one of the costs. Last year, the food assistance program provided benefits for 16 million children, compared with 9 million before the recession started in December of 2007. We’re also really pleased with our improving video results. In the first quarter, we lost 39,000 video customers, which is less than half of last year’s first quarter, which continues the trend of improving year over year video performance, while still facing a larger competitive footprint. He discovered that, starting cheap jerseys in the fall of 2004, Petee was teaching 152 ray bans sale students both athletes and non athletes in directed studies. And Petee was teaching 120 students the next semester, doing the work of more than three full time professors. He called upon his closer in the seventh. He trusted his ace in the ninth.. After all (wonderful as it is), with NPR you only get NPR. With satellite radio, you get NPR and the NFL, Public Radio wholesale jerseys International, the Eminem channel, music streams devoted exclusively to hair bands, 70s rock, Howard Stern, Elvis, and classical orchestral and choral works.. This refocusing of our assets is well under way. During the quarter we acquired SignStorey, which we renamed CBS Outernet, a video in store advertising company and we further invested in our online properties to help build our aggregate audience and we significantly built out our digital billboards and transit displays around the world. To decipher your neck size, have the person assisting you position the measuring tape just under cheap ray bans the Adam’s apple. Starting there, wholesale nfl jerseys carefully wrap the measuring tape around the neck so that it is at the height where your neck and shoulders meet, or where a collar would be. To prepare for the fasting, Muslims wake up before dawn and the Fajr prayer to eat a meal. Muslims break their fast at Maghrib (sunset) prayer time with a meal called Iftar. Instantaneous. Seamless. For the latter, with Christine Michael playing well in the preseason, Seattle will have a nice duo between the two backs. Combine that with the electrifying Russell Wilson and Seattle will be in the mix for Super Bowl contention.