Я пытаюсь изменить заголовки HTTP, отправленные PHP во время вызова Soap.Мне нужно, чтобы в мою службу было отправлено следующее:
Content-Type: text / xml; charset = UTF-8
В соответствии со всеми обходными путями, которые я видел, я должен использоватьконтекст, которым я на данный момент являюсь:
$STC = stream_context_create(array(
'http' => array(
'header' => 'Content-type: text/xml;charset=UTF-8'
),
));
$opt = array(
"soap_version" => SOAP_1_2,
"login" => $this->LOGIN,
"password" => $this->PASSWORD,
"authentication" => SOAP_AUTHENTICATION_BASIC,
"trace" => true,
"exceptions" => 1,
"cache_wsdl" => WSDL_CACHE_NONE,
"connection_timeout" => 30,
'stream_context' => $STC
);
$soapClient = new SoapClient($this->WSDL, $opt );
Дело в том, что независимо от того, как я это пробую, когда я изменяю дамп заголовков, отправленных моим клиентом Soap (используя __getLastRequestHeaders ()), я получаю следующее:
Тип содержимого: приложение / мыло + xml;кодировка = UTF-8;action = ""
И мой вызов не удался, потому что сервер ожидает правильный тип содержимого.
Чего мне не хватает?Почему php не принимает изменения на ожидаемый тип?
Заранее спасибо за ваши идеи!