Pingサーバhttp://ping.blogranking.netを構築してるエンジニアに、「livedoor Blogでモブログ投稿時のping送信が化ける」と伝えていたのですが、原因判明です。
---
<?xml version="1.0" encoding="UTF-8"?>
<methodCall>
<methodName>weblogUpdates.ping</methodName>
<params>
<param>
<value>
<string>予定は未定であって決定ではない</string>
</value>
</param>
<param>
<value>
<string>http://ymkx.net/imgs.o/</string>
</value>
</param>
</params>
</methodCall>
------------
この場合(↑)は、1行目で「encoding="UTF-8"」と書かれているので
問題なし。ところが、モブログによる投稿の場合はEUC-JPで、
------------
<?xml version="1.0"?>
<methodCall>
<methodName>weblogUpdates.ping</methodName>
<params>
<param>
<value>
<string>予定は未定であって決定ではない</string>
</value>
</param>
<param>
<value>
<string>http://ymkx.net/imgs.o/</string>
</value>
</param>
</params>
</methodCall>
------------
のようなXMLをPOSTしてくる。1行目に「encoding="..."」の指定がない。
「encoding="..."」の指定がない場合は「UTF-8」として扱われるので
文字化けが発生する。
livedoorBlog側のスタッフが、
・1行目に「encoding="euc-jp"」を付加する
・「UTF-8」でPingをPOSTするように変更する
のどちらか1つをやってくれればよいのだが・・・。
こちらで対応するしか無いのかも。
---
だそうです。まー、ありがちな抜けですな。XMLの規定を考えるとライブドア側に対応をして欲しいもんですが...とりあえず、サポートにトラバ。げ、トラバ先のエントリですが、なんか便利な機能が付いてるぞ。でもねー、ライブドアも楽天もポイント還元だもんなぁ...。