ブログパーツ
今作っているアプリケーションでブログパーツ機能が欲しい。iframeだと縦・横幅が動的に変化しないので、javascriptを使う方法でいきたい。また、scriptタグを任意の場所に入れるだけで、サーバ側にパラメータも渡せて、ブログパーツが挿入できるようにしたい。
JSONPを使おうとしたが、めんどくさいのでjavascriptでべた張りすることにする。
ブログパーツ呼び出し
<html> <head></head> <body> <script language="javascript" src="http:/hoge/blogparts/test?foo=bar" charset="UTF-8"></script> </body> </html>
blogparts_controller.rb
class BlogpartsController < ApplicationController layout "blogparts", :only => :settings def test @foo = params['foo'] content_type = @headers["Content-Type"] || 'text/javascript' if /^text\//.match(content_type) @headers["Content-Type"] = "#{content_type}; charset=utf-8" end end end
test.rhtml
document.write(<%=h @foo %>);
ブログパーツ呼び出し結果
bar
rhtmlでjavascriptをごりごり書きながら、ヘルパーも使えて、超便利。