如何将内容类型设置为'application / soap + xml; SOAP请求时PHP中的charset = utf-8'

时间:2018-06-11 07:30:06

标签: php curl soap xmlhttprequest soap-client

当我尝试向WSDL发送请求时出现此错误无法处理消息,因为内容类型text/xml; charset=utf-8不是预期的类型application/soap+xml; charset=utf-8

这是我的代码

$client = new SoapClient("http://bsestarmfdemo.bseindia.com/MFOrderEntry/MFOrder.svc?singleWsdl");
 $parameter = array(
    'User ID' => '0123',
    'Password' => 'mf@abc',
    'Pass Key' => 'abcdef1234',     
 );
$result = $client->getPassword($parameter);

我尝试过像这样传递内容类型

$client = new SoapClient("http://bsestarmfdemo.bseindia.com/MFOrderEntry/MFOrder.svc?wsdl",array('content type'=>'application/soap+xml')); 

但没有用。

这是WSDL链接:WSDL Source Link

请分享一些解决方案。提前谢谢。

1 个答案:

答案 0 :(得分:0)

只需将请求中的SOAP版本更改为1.2

即可
  $client = new SoapClient("http://bsestarmfdemo.bseindia.com/MFOrderEntry/MFOrder.svc?wsdl",array('soap_version' => SOAP_1_2));