WEB servisai - SOAP klientas

Posted by Saulius Grigaitis 14/07/2007 at 22h30

Sveiki! Kad ir kaip mėgstame ir žavimės "REST'u" ir "ActiveResource'u", labai daug naudingų WEB servisų naudoją kitus protokolus, pavyzdžiui SOAP. Šįkart trumpai apie tai, kaip lengvai galima pasiekti WEB servisą SOAP protokolu, naudojantis Ruby priemonėmis. Standartinėje Ruby bibliotekoje priemonės SOAP'ui yra gerokai pasenusios, tad verta naudotis "soap4r" "gem'u". Šiuo metu stabili versija yra 1.5.6.

gem install soap4r --source http://dev.ctor.org/download/ --version 1.5.6
Belieka susirasti norimo WEB serviso aprašą WSDL formatu ir pasirašyti paprastą scriptą:
#!/usr/bin/env ruby

require 'soap/rpc/driver'
require 'soap/wsdlDriver'

driver = SOAP::WSDLDriverFactory.new("wsdl_failo_url").create_rpc_driver

#klaidų ieškojimo rėžime(su "-d" raktu ruby interpretoriui) spausdiname visą "dump'ą"

driver.wiredump_dev = STDERR if $DEBUG
                       
#parametrai "hash'e" iš argumentų raktų ir jų reikšmų, informacijos apie tai galima rasti dominančio WEB serviso API dokumentacijoje
@results = driver.lc(:arg1 => "argumentas", :arg2 => "argumentas")
Iki!

no comments | no trackbacks

Comments

Trackbacks

Use the following link to trackback from your own site:
http://www.rubyonrails.lt/trackbacks?article_id=18

(leave url/email »)

reCaptcha

   Comment Markup Help Preview comment