Ruby的SOAP实践(一)

本例实现了一个多方法,包含参数的SOAP实例。

SOAP 服务端:


#!/usr/local/bin/ruby
require 'soap/rpc/standaloneServer'

module MySOAP
class Timer
def now
Time.new.strftime("%Y-%m-%d %H:%M:%S")
end
end
class Add
def add(i, j)
return i.to_i + j.to_i
end
end
end

class TimeServer < SOAP::RPC::StandaloneServer
def on_init
time = MySOAP::Timer.new
add = MySOAP::Add.new
add_method(time,"now")
add_method(add,"add")
end
end

NS = 'http://localhost/soap'
port = 4000
svr = TimeServer.new('timer',NS,'0.0.0.0',port)

trap('INT') { svr.shutdown }

puts "My SOAP is starting... port:#{port} (Ctrl+c to quit)"

svr.start

puts "My SOAP is stop."


SOAP客户端:

require 'soap/rpc/driver'

proxy = SOAP::RPC::Driver.new("http://localhost:4000","http://localhost/soap")

proxy.add_method('now')

proxy.add_method('add','i','j')

puts "Server time now is : #{proxy.now}"

puts "9 + 2000 = #{proxy.add(9,2000)}"
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值