Wrest is a fluent, easy-to-use, object oriented Ruby HTTP/REST client library with support for RFC2616 HTTP caching, multiple HTTP backends and async calls using EventMachine. It runs on CRuby and JRuby.
To use Memcached as caching back-end, install the 'dalli' gem.
To use multipart post, install the 'multipart-post' gem.
To use curl as the http engine, install the 'patron' gem. This feature is not available (and should be unneccessary) on jruby.
To use eventmachine as a parallel backend, install the 'eventmachine' gem.