| XML-RPC HOWTO | ||
|---|---|---|
| Prev | Next | |
(This section of the XML-RPC HOWTO was generously provided by Michael Neumann.)
Ruby is an object-oriented scripting language. It already has a major following in Japan, and it's becoming popular elsewhere.
To use XML-RPC with Ruby, you must first install Yoshida Masato's xmlparser module (a wrapper for James Clark's expat parser). This can be found at the Ruby Application Archive .
Then, you must install xmlrpc4r using the following commands:
bash$ tar -xvzf xmlrpc4r-1_2.tar.gz bash$ cd xmlrpc4r-1_2 bash$ su root -c "ruby install.rb" |
Here's a simple Ruby client:
require "xmlrpc/client"
# Make an object to represent the XML-RPC server.
server = XMLRPC::Client.new( "xmlrpc-c.sourceforge.net", "/api/sample.php")
# Call the remote server and get our result
result = server.call("sample.sumAndDifference", 5, 3)
sum = result["sum"]
difference = result["difference"]
puts "Sum: #{sum}, Difference: #{difference}"
|
Here's a simple Ruby server:
require "xmlrpc/server"
s = XMLRPC::CGIServer.new
s.add_hanlder("sample.sumAndDifference") do |a,b|
{ "sum" => a + b, "difference" => a - b }
end
s.serve
|
This could also have been written as follows:
require "xmlrpc/server"
s = XMLRPC::CGIServer.new
class MyHandler
def sumAndDifference(a, b)
{ "sum" => a + b, "difference" => a - b }
end
end
s.add_handler("sample", MyHandler.new)
s.serve
|
To run either server in standalone mode, replace the second line of code with the following:
s = XMLRPC::Server.new(8080) |
| Prev | Home | Next |
| Using XML-RPC with Microsoft .NET | Using XML-RPC with Proprietary Languages |