This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
| name | age | message | |
|---|---|---|---|
| |
.gitignore | Mon Mar 10 16:52:59 -0700 2008 | [adamwiggins] |
| |
README | Tue Sep 02 18:28:50 -0700 2008 | [adamwiggins] |
| |
Rakefile | Mon Aug 18 23:08:49 -0700 2008 | [adamwiggins] |
| |
bin/ | Fri Aug 01 11:48:56 -0700 2008 | [adamwiggins] |
| |
lib/ | Tue Aug 19 13:29:02 -0700 2008 | [eventualbuddha] |
| |
rest-client.gemspec | Mon Aug 18 23:08:49 -0700 2008 | [adamwiggins] |
| |
spec/ | Tue Aug 19 13:29:02 -0700 2008 | [eventualbuddha] |
README
= REST Client -- simple DSL for accessing REST resources A simple REST client for Ruby, inspired by the Sinatra's microframework style of specifying actions: get, put, post, delete. == Usage: Raw URL require 'rest_client' RestClient.get 'http://example.com/resource' RestClient.get 'https://user:password@example.com/private/resource' RestClient.post 'http://example.com/resource', :param1 => 'one', :nested => { :param2 => 'two' } RestClient.delete 'http://example.com/resource' See RestClient module docs for details. == Usage: ActiveResource-Style resource = RestClient::Resource.new 'http://example.com/resource' resource.get private_resource = RestClient::Resource.new 'https://example.com/private/resource', 'user', 'pass' private_resource.put File.read('pic.jpg'), :content_type => 'image/jpg' See RestClient::Resource module docs for details. == Usage: Resource Nesting site = RestClient::Resource.new('http://example.com') site['posts/1/comments'].post 'Good article.', :content_type => 'text/plain' See RestClient::Resource docs for details. == Shell The restclient shell command gives an IRB session with RestClient already loaded: $ restclient >> RestClient.get 'http://example.com' Specify a URL argument for get/post/put/delete on that resource: $ restclient http://example.com >> put '/resource', 'data' Add a user and password for authenticated resources: $ restclient https://example.com user pass >> delete '/private/resource' Create ~/.restclient for named sessions: sinatra: url: http://localhost:4567 rack: url: http://localhost:9292 private_site: url: http://example.com username: user password: pass Then invoke: $ restclient private_site == Logging Write calls to a log filename (can also be "stdout" or "stderr"): RestClient.log = '/tmp/restclient.log' Or set an environment variable to avoid modifying the code: $ RESTCLIENT_LOG=stdout path/to/my/program Either produces logs like this: RestClient.get "http://some/resource" # => 200 OK | text/html 250 bytes RestClient.put "http://some/resource", "payload" # => 401 Unauthorized | application/xml 340 bytes Note that these logs are valid Ruby, so you can paste them into the restclient shell or a script to replay your sequence of rest calls. == Meta Written by Adam Wiggins (adam at heroku dot com) Patches contributed by: Chris Anderson, Greg Borenstein, Ardekantur, Pedro Belo, Rafael Souza, Rick Olson, Aman Gupta, Blake Mizerany, and Brian Donovan Released under the MIT License: http://www.opensource.org/licenses/mit-license.php http://rest-client.heroku.com http://github.com/adamwiggins/rest-client




