Savon კლიენტში, რომელიც HTTPI-ს იყენებს, პროქსი კლიენტის პარამეტრების ნაწილია. ის მოქმედებს დისტანციური WSDL-ის მიღებისას და SOAP მოთხოვნის გაგზავნისას.

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

მაგალითი HTTPI ტრანსპორტს გულისხმობს. მიაწოდეთ დამტკიცებული პროქსის URL გარემოს საშუალებით. საჯარო SOAP ტესტისთვის, რომელიც დაუშვებს აუთენტიფიკაციებელ HTTP შუამავალს, HTTP პროქსების სიიდან კანდიდატს შეუძლია მოგაწოდოთ ეს URL; სერვისისა და პროქსის აუთენტიფიკაციის გადაწყვეტილებები ცალ-ცალკე შეინახეთ. თუ მხარდაჭერილი აუთენტიფიკაციის მეთოდი URL-ში არსებულ მონაცემებს იყენებს, დაშიფრეთ დაცული სიმბოლოები ამ მონაცემებში და მიღებული URL ჟურნალებს მიღმა შეინახეთ.

Savon მათ „გლობალურ პარამეტრებს” უწოდებს, მაგრამ ისინი მხოლოდ ერთ კლიენტის ეგზემპლარზე ვრცელდება. სხვაგან შექმნილი სხვა კლიენტი პროქსის ავტომატურად არ მემკვიდრეობს.

სნიპეტის ხელახლა გამოყენებამდე შეამოწმეთ დაინსტალირებული ტრანსპორტი. Savon-ის მიმდინარე დოკუმენტაცია ამ პარამეტრებს HTTPI-ს ანიჭებს; მის Faraday ტრანსპორტს client.faraday-ის მეშვეობით საკუთარი კონფიგურაციის ინტერფეისი აქვს და უარყოფს HTTPI-სთვის სპეციფიკურ ამ პარამეტრებს. დააკონფიგურირეთ არჩეული ტრანსპორტი, ნაცვლად ორი ინტერფეისის შერევისა.

პროქსის ანგარიში ცალკე შეინახეთ SOAP სერვისის მონაცემებისა და WS-Security მნიშვნელობებისგან. პროქსის 407, სერვისის HTTP შესვლის გამოწვევა და SOAP შეცდომა სხვადასხვა გაცვლას აღნიშნავს. WSDL-ის მიღება შეიძლება ჩავარდეს მანამ, სანამ კლიენტი რომელიმე აპლიკაციის ოპერაციას შეასრულებს.

დაკავშირებული სტატიები