WSDL ve hizmet çağrıları için PHP SoapClient proxy ayarları
PHP SoapClient proxy seçeneklerini, kimlik bilgilerini User-Agent'a enjekte etmeden WSDL yükleme ve hizmet çağrıları için yapılandırın.
Uzak WSDL yüklemesi SoapClient oluşturucusunun içinde gerçekleşebilir. Proxy'yi bu ilk almadan önce belirtin:
$client = new SoapClient('https://service.example.com/api?wsdl', [
'proxy_host' => '203.0.113.10',
'proxy_port' => 8080,
'proxy_login' => getenv('PROXY_USER'),
'proxy_password' => getenv('PROXY_PASSWORD'),
'connection_timeout' => 5,
'exceptions' => true,
]);Gerçek WSDL'yi, proxy ana bilgisayarı/bağlantı noktasını ve amaçlanan kimlik bilgisi kaynağını kullanın. Ana bilgisayar alanı bir adrestir, bağlantı noktası ayrıdır.
| Başarısız olduğunda | İncelenecek istek veya işlem |
|---|---|
| İstemci oluşturma | WSDL alma veya belge işleme. |
| İçe aktarılan belge/şema işleme | Gerçek ek alma URL'si. |
| Bir SOAP yöntem çağrısı | WSDL'de bildirilen hizmet uç noktası, muhtemelen başka bir ana bilgisayarda. |
Önbelleğe alınmış WSDL kullanan bir iş akışı, başka bir makinede başarısız olan isteği atlayabilir. Proxy'yi yalnızca oluşturmanın başarısına göre değiştirmek yerine önbellek yapılandırmasını ve gerçekte başarısız olan URL'yi karşılaştırmayla birlikte saklayın.
proxy_login/proxy_password aracıyı doğrular. Hedef login/password ve SOAP düzeyinde hizmet kimlik doğrulaması başka katmanlara hizmet eder. Hesap benzeri başlıkları User-Agent'a koymak yerine özel seçenekleri kullanın; gerekli uygulama başlıkları desteklenen bir başlık arabirimine aittir.
Kaydedin işlemi, hedefi ve meydan okumayı düzenleyen tarafı sırlar kaldırılmış olarak. connection_timeout bağlantı kurulumunu sınırlar, uzun bir SOAP işleminin toplam süresini değil.