いっしきまさひこBLOG

Web制作関連、プログラミング関連、旅行記録などなど。

カスタムURLを指定した、はてなブログAtomPubによる記事投稿

はてなブログでは、カスタムURL(custom-url、CustomPath)が指定できます。

しかしAtomPubを使う場合は指定できないという問題があります。少なくとも公式のヘルプには指定方法が記載されていません。

上記のコンソールアプリは、はてなのMackerelのドキュメント作成で使われているもので、これには --custom-path というカスタムURLを指定するためのオプションが用意されていました。

中身を調べてみると、blogsync/atom.go at master · motemen/blogsyncxml:"http://www.hatena.ne.jp/info/xmlns#hatenablog custom-url,omitempty" という記載があり、XML名前空間に「http://www.hatena.ne.jp/info/xmlns#hatenablog」を設定した <custom-url> 要素にカスタムURLを指定できることが分かります。

実際にAdvanced REST clientというツールで、HTTP POST送信のBodyに指定して検証すると、確かに動作しました。ということで誰かの役に立つかもしれないので情報共有しておきます。

<?xml version="1.0" encoding="utf-8"?>
<entry xmlns="http://www.w3.org/2005/Atom"
       xmlns:app="http://www.w3.org/2007/app"
       xmlns:opt="http://www.hatena.ne.jp/info/xmlns#hatenablog">
...
  <opt:custom-url>test/path</opt:custom-url>
</entry>