我有一个Rails应用程序,它通过WSDL文件使用另一个Rails应用程序的API。我想以某种方式缓存或定义为我创建的API的“句柄”常量:
serv = SOAP::WSDLDriverFactory.new(APP_CONFIG['api_url']).create_rpc_driver
对于使用API的所有方法重新加载这个方法既缓慢又不是很干。 API不会经常更改,因此我想在启动应用程序时创建“句柄”,并始终对所有连接使用相同的“句柄”。
我如何以及在何处定义这种全局变量?我知道常量可以在environment.rb中设置但是如果我尝试在那里定义这一行,它似乎不起作用,得到某种超时错误。
答案 0 :(得分:0)
我建议使用soap4r实用程序wsdl2ruby.rb来生成soap驱动程序并使用它。 Soap4r是Ruby 1.8.6发行版中的一个奇怪的库,可用作gem。
gem install soap4r
wsdl2ruby.rb --help
你会想做这样的事情:
wsdl2ruby.rb --wsdl http://your/wsdl/url --type client