response.body全体をmemcachedに保存しようとしています。私はそのようにやっています:
Rails.cache.write(request.headers['HTTP_X_MEMCACHED_KEY'], response.body)
問題は、値の前にガベージが追加されることです。
o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1355928410.584484:@value"GsI";s<!DOCTYPE html>...
に渡そうとしました:raw => true
がRails.cache.write
、falseが返され、値がmemcachedに渡されません。response.bodyが適切にエスケープされていないため、失敗したと思います。
私もこの方法を試しました:
Rails.cache.write(request.headers['HTTP_X_MEMCACHED_KEY'], Marshal.dump(response.body), :raw => true)
それは機能しますが、値にはまだいくつかのゴミがあります:
I"fD<!DOCTYPE html>...
クリーンな値をmemcachedに入れる方法は?