У меня есть сервис wcf, и я могу получить доступ к нему с помощью soapclient в php, теперь я собираюсь использовать балансировщик нагрузки и этот В статье говорится «установить false для keepAliveEnabled». Поэтому я использовал обычные привязки. но проблема в том, что теперь я не могу получить доступ к сервису, используя php. Я видел много статей, в которых говорилось об использовании basicHttpBindings, но я не могу использовать этот метод. Я получаю эту ошибку.
Caught exception: Cannot process the message because the content type 'text/xml; charset=utf-8' was not the expected type 'application/soap+xml; charset=utf-16LE'.
Поэтому я добавил soapversion в SoapClient
$client = new SoapClient($wsdl, array('uri' => 'http://tempuri.org/','soap_version' => SOAP_1_2,'trace' => true,'cache_wsdl' => WSDL_CACHE_NONE,'keep_alive' => false));
тогда я получаю эту ошибку.
Caught exception: The SOAP action specified on the message, '', does not match the HTTP SOAP Action, 'http://Microsoft.ServiceModel.Samples/Service1'
Это пользовательская привязка, которую я использовал.
<customBinding>
<binding name="HttpBinding" keepAliveEnabled="False"/>
</customBinding>
Может кто-нибудь сказать мне, как решить эту проблему. Или любой другой способ сделать это. Спасибо
Задача ещё не решена.
Других решений пока нет …