第一回で説明したとおり、トラックバックは以下のパラメータを持った HTTP POST リクエストです。
・ title(記事のタイトル)
・ excerpt(記事の要約)
・ url(記事の URL)
・ blog_name(ブログ名)
そこで、以下のようなコードを書いてやれば、トラックバックを送信できます。このメソッドを、記事を生成するメソッドか更新するメソッドから呼び出してやればよいでしょう。
require 'net/http'
require 'uri'
def send_trackback(url, article)
Net::HTTP.version_1_2
uri = URI.parse(url)
http = Net::HTTP.new(uri.host, 80)
data = 'title=' + Article_Title +
'&url=' + Url
'&blog_name=' + Title +
'&excerpt=' + Article_Content
response = http.post(uri.path, data)
end
ひとつ注意してほしいことは、同じ記事(URL)に対して同じ内容のトラックバックを複数回送信すると相手先に迷惑になるので、そのような実装は避けてください。