HTTParty-Icebox - Caching for HTTParty
HTTParty-Icebox is no longer being maintained.
As I haven't used HTTParty for a long time, and don't like feeling bad about neglecting HTTParty-Icebox, I've decided to deprecate it. Check out CacheBar instead.
If you're interested in taking over let me know. I should still have my unfinished rewrite somewhere.
Cache responses in HTTParty models
You can install the latest Film Buff gem using RubyGems
gem install httparty-icebox
Alternatively you can check out the latest code directly from Github
git clone http://github.com/sachse/httparty-icebox.git
Enable caching with default values:
require 'httparty-icebox' include HTTParty::Icebox cache # Use HTTParty's .get method as usual, the response will now be cached cached_response = HTTParty.get("https://github.com/sachse/httparty-icebox")
Cache responses for 5 minutes on the system in the directory "/tmp":
require 'httparty-icebox' include HTTParty::Icebox cache :store => 'file', :timeout => 300, :location => '/tmp/' # Use HTTParty's .get method as usual, the response will now be cached cached_response = HTTParty.get("https://github.com/sachse/httparty-icebox")
Fork the project, implement your changes in it's own branch, and send a pull request to me. I'll gladly consider any help or ideas.
- Martyn Loughran - Major parts of this code are based on the architecture of ApiCache.
- David Heinemeier Hansson - Other parts are inspired by the ActiveSupport::Cache in Ruby On Rails.
- Amit Chakradeo - For pointing out response objects have to be stored marshalled on FS.
- Marlin Forbes - For pointing out the query parameters have to be included in the cache key.
- ramieblatt - Original Memcached store.