= YamlRpc -- advanced RPC client on YAML
Supports:
* Data types (String, Regexp, Arrays, Hashes etc.)
* Passing images, PDFs and other binary data so easy you don't even think about it
* HTTP redirects
* HTTP Authentication
Simple to use:
client = YamlRpc::Client.new('http://localhost:3000/api/basic')
client.add_foo_bar( :foo => 3, :bar => 5 ) # -> { :result => 8 }
client.add(7, 11) # -> 18
client.upload(:image => open('image.gif', 'rb').read) # -> uploads image
Example add_foo_bar POSTs:
http://localhost:3000/api/basic/add_foo_bar
passing POST data:
yamlrpc=---%20%0A:foo:%203%0A:bar:%205%0A
which can be captured in any language like PHP, Java or Ruby, ie. Ruby on Rails:
class Api::BasicController < ApplicationController
def add_foo_bar
@yamlrpc = YAML.load(params[:yamlrpc])
render :text => (@yamlrpc[:foo] + @yamlrpc[:bar]).to_yaml
end
end
Result is returned as YAML as well and automatically decoded.
See /examples dir for more examples.
== Download
The latest version:
* http://svn.mirekrusin.com/ruby/yamlrpc/trunk
== Installation
gem install yamlrpc
== License
This library is released under the LGPL license.
== Support
The homepage is located under http://www.rubyforge/projects/yamlrpc
For other information, feel free to ask on the ruby-talk mailing list
(which is mirrored to comp.lang.ruby) or contact mailto:[email protected]
Supports:
* Data types (String, Regexp, Arrays, Hashes etc.)
* Passing images, PDFs and other binary data so easy you don't even think about it
* HTTP redirects
* HTTP Authentication
Simple to use:
client = YamlRpc::Client.new('http://localhost:3000/api/basic')
client.add_foo_bar( :foo => 3, :bar => 5 ) # -> { :result => 8 }
client.add(7, 11) # -> 18
client.upload(:image => open('image.gif', 'rb').read) # -> uploads image
Example add_foo_bar POSTs:
http://localhost:3000/api/basic/add_foo_bar
passing POST data:
yamlrpc=---%20%0A:foo:%203%0A:bar:%205%0A
which can be captured in any language like PHP, Java or Ruby, ie. Ruby on Rails:
class Api::BasicController < ApplicationController
def add_foo_bar
@yamlrpc = YAML.load(params[:yamlrpc])
render :text => (@yamlrpc[:foo] + @yamlrpc[:bar]).to_yaml
end
end
Result is returned as YAML as well and automatically decoded.
See /examples dir for more examples.
== Download
The latest version:
* http://svn.mirekrusin.com/ruby/yamlrpc/trunk
== Installation
gem install yamlrpc
== License
This library is released under the LGPL license.
== Support
The homepage is located under http://www.rubyforge/projects/yamlrpc
For other information, feel free to ask on the ruby-talk mailing list
(which is mirrored to comp.lang.ruby) or contact mailto:[email protected]