Savon HTTPI պրոքսիի կարգավորում WSDL և SOAP հարցումների համար
Կարգավորեք պրոքսին 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-ի ստացումը կարող է ձախողվել նախքան հաճախորդը կկատարի որևէ հավելվածային գործողություն։