HTTParty-Icebox - Caching for HTTParty
Description
Cache responses in HTTParty models
Installation
RubyGems
You can install the latest Film Buff gem using RubyGems
gem install httparty-icebox
GitHub
Alternatively you can check out the latest code directly from Github
git clone http://github.com/sachse/httparty-icebox.git
Usage
Examples
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")
Authors
Kristoffer Sachse (Current maintainer)
Karel Minarik (Original creator through a gist)
Contribute
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.
Contributors
- 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.