5

外部サイトでコンバージョン トラッキングを行う Rails アプリを構築しています。ユーザーがコンバージョン ページ (AdWords など) に画像タグを貼り付けられるようにしたいと考えています。その画像がリクエストされるたびに、コンバージョンがアプリに登録されます。

respond_to do |format|
  if @conversion.save
    flash[:notice] = 'Conversion was successfully created.'
    format.html { redirect_to(@conversion) }
    format.xml  { render :xml => @conversion, :status => :created, :location => @conversion }
    format.js { render :json => @conversion, :status => :created }
    format.gif { head :status => :ok }
  else
    format.html { render :action => "new" }
    format.xml  { render :xml => @conversion.errors, :status => :unprocessable_entity }
  end
end    

このようにして、ブラウザは存在しない .gif 画像を取得します。これを行うより良い方法はありますか?

4

3 に答える 3

3

シンプルなオプション:

format.gif {redirect_to'/images/1x1.gif'}

/本当に/古いブラウザ(IE5、Netscapeかもしれませんか?)ではこれが機能しない可能性があると思います。したがって、それらをサポートする必要がある場合、古い学校の解決策は、実際にgifのバイナリデータをロードして、それを吐き出すことでした。正しいコンテンツタイプで直接ブラウザ。

于 2010-05-15T16:45:38.813 に答える
1

ここに私の解決策があります

format.gif { send_data Rails.root.join('app', 'assets', 'images', '1x1.gif') }
于 2013-07-22T13:07:01.517 に答える