发布于2024-11-30 20:08 阅读(1023) 评论(0) 点赞(1) 收藏(0)
我正在尝试从以下 SOAP 请求中删除“ser”属性:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://localhost/server">
<soapenv:Header/>
<soapenv:Body>
<ser:eRoamingChargeDetailRecord>
<SessionID>?</SessionID>
</ser:eRoamingChargeDetailRecord>
</soapenv:Body>
</soapenv:Envelope>
我希望它看起来像这样:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="localhost/blah">
<soapenv:Header/>
<soapenv:Body>
<eRoamingChargeDetailRecord xmlns:ns2="localhost/blah" xmlns="localhost/blah">
<SessionID>?</SessionID>
</eRoamingChargeDetailRecord>
</soapenv:Body>
</soapenv:Envelope>
但是,当我手动删除此前缀时,服务器返回以下错误:
Procedure 'eRoamingChargeDetailRecord' not present
SOAP 服务器在 PHP 中的设置如下:
if (isset($_GET['wsdl'])) {
ini_set('soap.wsdl_cache_enabled', 0);
$soapAutoDiscover = new \Zend\Soap\AutoDiscover(new \Zend\Soap\Wsdl\ComplexTypeStrategy\ArrayOfTypeSequence());
$soapAutoDiscover->setBindingStyle(array('style' => 'document'));
$soapAutoDiscover->setOperationBodyStyle(array('use' => 'literal'));
$soapAutoDiscover->setClass('\\App\\Helpers\\Soap\\SoapFunctions');
$soapAutoDiscover->setUri('http://localhost/server');
$soapAutoDiscover->handle();
} else {
$soap = new \Zend\Soap\Server('http://localhost/server?wsdl', array("soap_version" => SOAP_1_1));
$soap->setObject(new \Zend\Soap\Server\DocumentLiteralWrapper(new \App\Helpers\Soap\SoapFunctions()));
$soap->handle();
}
}
其功能为:
/**
* This method takes ...
*
* @param string $SessionID
* @return string
*/
public function eRoamingChargeDetailRecord($SessionID) {
return "hello2 {$SessionID}";
}
我怎样才能删除这个 ser 前缀?
作者:黑洞官方问答小能手
链接:http://www.phpheidong.com/blog/article/558236/961959838af921d0a589/
来源:php黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 php黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-4
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!