Kod Savon klijenta koji koristi HTTPI, proksi je deo klijentovih opcija. Primenjuje se pri preuzimanju udaljenog WSDL-a i pri slanju SOAP zahteva.

client = Savon.client(
  wsdl: 'https://service.example/soap?wsdl',
  proxy: ENV.fetch('SOAP_PROXY_URL'),
  open_timeout: 5,
  read_timeout: 15
)

Primer pretpostavlja HTTPI transport. Dostavite odobreni proksi URL kroz okruženje. Za javni SOAP test koji dopušta neautentifikovan HTTP posrednik, kandidat sa liste HTTP proksija može dati taj URL; držite odluke o autentifikaciji servisa i proksija odvojeno. Ako podržana metoda autentifikacije koristi podatke u URL-u, kodirajte rezervisane znakove u tim podacima i držite dobijeni URL izvan zapisa.

Savon ih naziva „globalnim opcijama”, ali one su lokalne za instancu klijenta. Zaseban klijent stvoren negde drugde ne nasleđuje proksi automatski.

Proverite instalirani transport pre ponovne upotrebe isečka. Savonova trenutna dokumentacija pripisuje te opcije HTTPI-ju; njegov Faraday transport ima sopstveno sučelje za podešavanje kroz client.faraday i odbija ove opcije specifične za HTTPI. Konfigurišite izabrani transport umesto mešanja dva sučelja.

Držite proksi nalog odvojeno od podataka za SOAP servis i vrednosti WS-Security. Proksijev 407, HTTP izazov za prijavu servisa i SOAP greška označavaju različite razmene. Preuzimanje WSDL-a može propasti pre nego što je klijent uopšte izvršio neku operaciju.

Povezani članci