Konfigurisanje Savon HTTPI proxyja za WSDL i SOAP zahtjeve
Konfigurirajte proxy na Savon HTTPI klijentu i uzmite u obzir i preuzimanje udaljenog WSDL-a i SOAP pozive.
Kod Savon klijenta koji koristi HTTPI, proxy je dio klijentovih opcija. Primjenjuje se pri preuzimanju udaljenog WSDL-a i pri slanju SOAP zahtjeva.
client = Savon.client(
wsdl: 'https://service.example/soap?wsdl',
proxy: ENV.fetch('SOAP_PROXY_URL'),
open_timeout: 5,
read_timeout: 15
)
Primjer pretpostavlja HTTPI transport. Dostavite odobreni proxy URL kroz okruženje. Za javni SOAP test koji dopušta neautentificiran HTTP posrednik, kandidat iz liste HTTP proxyja može dati taj URL; držite odluke o autentifikaciji servisa i proxyja 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 negdje drugdje ne nasljeđuje proxy automatski.
Provjerite instalirani transport prije ponovne upotrebe isječka. Savonova aktuelna dokumentacija pripisuje te opcije HTTPI-ju; njegov Faraday transport ima vlastito sučelje za postavljanje kroz client.faraday i odbija ove opcije specifične za HTTPI. Konfigurirajte odabrani transport umjesto miješanja dva sučelja.
Držite proxy račun odvojeno od podataka za SOAP servis i vrijednosti WS-Security. Proxyjev 407, HTTP izazov za prijavu servisa i SOAP greška označavaju različite razmjene. Preuzimanje WSDL-a može propasti prije nego što je klijent uopće izvršio neku operaciju.