XML-RPC简介
ruby的xmlrpc使用方法:
Rpc_service.rb
方法一:
require 'xmlrpc/server'
port=1234
server = XMLRPC::Server.new(port)server.add_handler("sample.sumAndDifference") do |a,b|
{ "sum" => a.to_i + b.to_i,
"difference" => a.to_i - b.to_i }
# {UTF8_to_GB2312(a.to_i+b.to_i)}
end
trap("INT") { server.shutdown }
server.serve
s.add_handler("sample.sumAndDifference") do |a,b|
{ "sum" => a + b, "difference" => a - b }
end
trap("INT") { s.shutdown }
s.serve
</pre>方法二(推荐):<p></p><p><span style="font-size:14px"></span></p><pre name="code" class="html">require 'xmlrpc/server'
s = XMLRPC::Server.new(1212)
class MyHandler
def sumAndDifference(a, b)
puts @good="oooo"
puts a
puts b
puts b=a*b
puts b
#{ "sum" => a + b, "difference" => a - b ,"@good" =>@good}
return (b.to_s+"<##>"+a.to_s)
end
end
s.add_handler("sample", MyHandler.new)
trap("INT") { s.shutdown }
s.serve
注解(因为第二种可以进行数据的技术和返回值的拼接)
RPC_client.rb
require 'xmlrpc/server'
server = XMLRPC::Client.new2("http://127.0.0.1:1212/")
puts server.call("sample.sumAndDifference", 5, 3).inspect
进行数据的调用:
详情请参照: