WSDL اور SOAP درخواستوں کے لیے Savon HTTPI پراکسی کنفیگر کریں
Savon HTTPI کلائنٹ پر پراکسی کنفیگر کریں اور دور دراز WSDL حاصل کرنے اور SOAP کالز دونوں کو مدنظر رکھیں۔
HTTPI استعمال کرنے والے Savon کلائنٹ میں پراکسی کلائنٹ کے اختیارات کا حصہ ہے۔ یہ دور دراز 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 حاصل کرنا کلائنٹ کی کسی بھی ایپلیکیشن کارروائی سے پہلے ناکام ہو سکتا ہے۔