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-ஐ சூழல் வழியாக வழங்கவும். அங்கீகாரமற்ற HTTP இடைநிலையை அனுமதிக்கும் பொது SOAP சோதனைக்கு HTTP ப்ராக்ஸி பட்டியலில் இருந்து ஒரு வேட்பாளர் அந்த URL-ஐ வழங்க முடியும்; சேவை மற்றும் ப்ராக்ஸி அங்கீகார முடிவுகளைத் தனித்தனியாக வைத்திருங்கள். ஆதரிக்கப்படும் அங்கீகார முறை URL-க்குள் உள்ள சான்றுகளைப் பயன்படுத்தினால், அந்தச் சான்றுகளில் ஒதுக்கப்பட்ட எழுத்துகளை குறியாக்கம் செய்யுங்கள் மற்றும் விளைந்த URL-ஐ பதிவுகளுக்கு வெளியே வைத்திருங்கள்.
Savon இவற்றை “உலகளாவிய விருப்பங்கள்” என்கிறது, ஆனால் அவை ஒரு கிளையண்ட் நிகழ்வுக்கு மட்டுமே. வேறு இடத்தில் உருவாக்கப்பட்ட மற்றொரு கிளையண்ட் ப்ராக்ஸியைத் தானாகப் பெறாது.
துணுக்கை மீண்டும் பயன்படுத்தும் முன் நிறுவப்பட்ட இடமாற்றத்தைச் சரிபார்க்கவும். Savon-இன் தற்போதைய ஆவணங்கள் இந்த விருப்பங்களை HTTPI-க்கு ஒதுக்குகின்றன; அதன் Faraday இடமாற்றம் client.faraday வழியாக அதன் சொந்த அமைப்பு இடைமுகத்தைக் கொண்டுள்ளது மற்றும் இந்த HTTPI-குறிப்பிட்ட விருப்பங்களை நிராகரிக்கிறது. இரண்டு இடைமுகங்களைக் கலக்காமல் தேர்ந்தெடுத்த இடமாற்றத்தை உள்ளமைக்கவும்.
ப்ராக்ஸி கணக்கை SOAP சேவையின் சான்றுகள் மற்றும் WS-Security மதிப்புகளிலிருந்து தனியாக வைத்திருங்கள். ப்ராக்ஸியின் 407, சேவையின் HTTP உள்நுழைவு சவால் மற்றும் SOAP பிழை வெவ்வேறு பரிமாற்றங்களைக் குறிக்கின்றன. கிளையண்ட் எந்தவொரு பயன்பாட்டுச் செயலையும் செய்வதற்கு முன்பே WSDL பெறுதல் தோல்வியடையலாம்.