冬言響 / 日記

アメコミとか映画とか音楽とか猫とか単車とか自転車とか革とか銀とかジーンズとかブーツとか今日喰ったものとか。

RSS2.0

(無題)

トラックバックを実装してみた。とりあえず受信だけ。送信はおいおいと。ちゃんと正しくやれてんのかも良く判らんけど。

この技術仕様書というのを参考に。http://winterzeit.org/trackback?date=YYYY-MM-DD の URI に POST リクエストがあったら、title(エントリのタイトル)、excerpt(エントリの要約)、url(エントリの URI)、blog_name(ブログのタイトル)の 4 つのパラメータを記事に対するトラックバックとして記録します。成功したら

<?xml version="1.0" encoding="Shift-JIS"?>
<response>
<error>0</error>
</response>

といった具合で XML データが返されます。文字コードは元が Shift-JIS なのでそのまま Shift-JIS にしてあるけど、iso-8859-1 でなきゃならんのだろうか。まあ良いや。

エラーがあった場合は

<?xml version="1.0" encoding="Shift-JIS"?>
<response>
<error>1</error>
<message>エラーの内容</message>
</response>

という具合で。エラーになるのはとりあえず現時点では指定された日付(YYYY-MM-DD)が存在しない嘘日付だった場合なのだが、仕様書を良く見たらその場合は 404 返しとけって書いてあるなあ。まあ良いや(2 度目)。エラー条件はおいおい追加する。excerpt が全部 ASCII 文字だった場合、とか。

文字コードは charset パラメータがあった場合はその値で、無ければ UTF-8 で送られてるものとして、記録時に内部で Shift-JIS に変換してます。そのまんま mb_convert_encoding($_POST["title"], "SJIS", $_POST["charset"]) って具合でぶっ込んでます。

何か問題があったり気が変わったり飽きたりしたらいきなりやめるかも知れません。

とかとか。