[xmlrpc][windowslivewriter] Windows Live Writer + tdiary + Metaweblog API
最近はtdiaryへの投稿にWindows Live Writerを使っているのですが、Windows Live Writerのバージョンが変わった(ベータ版から正式版になった)せいなのか、以下のことができなくなっちゃいました。
- カテゴリの取得、指定
- 既存の記事の取得
以前はどちらもできていた記憶があるのですが…。
Windows Live Writerのページには以下の記述が
さまざまなブログに対応
Writer を使うと、Windows Live スペース、SharePoint、Community Server 上のブログに記事を投稿できます。また、 Metaweblog API と RSD をともにサポートしている他のブログサービスの記事の編集、投稿にも利用できます。
※ご利用中のブログサービスの Metaweblog API および RSD の対応状況については、当該のブログサービスにご確認ください。
tdiaryのxmlrpc.rbはMetaweblog APIおよびRSDに対応しているようです。
でも、実際にカテゴリの取得を行っている際のパケットを見てみると以下のようなやり取りが。
POST http://ebi.dyndns.biz/diary/xmlrpc.rb HTTP/1.0
Accept: */*
Accept-Language: ja-JP, en-US, en, *
User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Windows Live Writer 1.0)
Content-Type: text/xml
Host: ebi.dyndns.biz
Content-Length: 377
<?xml version=”1.0” encoding=”euc-jp”?>
metaWeblog.getCategories </param> ebi's diary </param> ユーザー名 </param> パスワード HTTP/1.1 200 OK
Via: ProxyServer
Content-length: 310
Date: Fri, 22 Aug 2008 04:10:03 GMT
Content-Type: text/xml; charset=utf-8
Server: Apache/2.2.9 (Debian) PHP/5.2.6-2+b1 with Suhosin-Patch mod_python/3.3.1 Python/2.4.4 mod_ssl/2.2.9 OpenSSL/0.9.8g mod_perl/2.0.3 Perl/v5.8.8
Keep-Alive: timeout=15, max=100
<?xml version=”1.0” ?>
faultCode 1 faultString Method metaWeblog.getCategories missing or wrong number of parameters!
“Method metaWeblog.getCategories missing or wrong number of parameters!”ということなので明らかにWindows Live Writer側とtdiary(xmlrpc.rb)側でミスマッチな感じです。両者が対応しているMetaweblog APIのバージョンが異なるのでしょうか?でも、リクエストにバージョンなんてないですけどね。
Windows Live Writer側のMetaweblog APIの認識は以下のドキュメントのものの模様。
あとは、実際にxmlrpc.rbの内容を見てみて…ですかね。時間がとれたら自分で実装してみたいなぁと思います。