簡體   English   中英

php SoapClient和負載平衡服務器

[英]php SoapClient and load balancing server

我正在使用php SoapClient。 Soap服務器是.NET服務器。 當客戶端調用http地址,並且答案來自客戶端調用的服務器時,一切正常。

我遇到的問題是,客戶端必須調用https地址,並且服務器使用負載平衡系統,從而導致從另一台服務器獲得答案(客戶端調用serverX並有時從serverY,有時從serverZ等獲得答案)。

這是我使用的php代碼(在沒有https和沒有負載平衡,與https和負載平衡不兼容的情況下工作正常):

$client = new SoapClient('http://www.serverA.com/serviceB.svc?wsdl');
$immat = 'yadiyadiyada';
$params = array('immat' => $immat);
$result = $client->__soapCall('setImmat', array($params));
$id_found = $result->setImmatResult;

對我應該做什么有任何想法嗎? 任何提示將非常感謝!

謝謝

我終於找到了解決方法。

我沒有使用服務器提供的XML文件實例化php SoapClient,而是在客戶端制作了一個副本,並對其做了一些修改。 我只更改了“ schemaLocation”:服務器端,該值類似於“ https://www.serverY.com/serviceB.svc?xsd=xsd0 ”,我將其替換為“ https://www.serverX.com /serviceB.svc?xsd=xsd0 “。 現在,我用這個新文件實例化php SoapClient:

$client = new SoapClient('/local_path/wsdl.xml');

而且有效!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM