本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

如何从 PHP 中的 SOAP 请求属性中删除“ser”前缀

发布于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 前缀?

我在 SO 上发现了类似的问题,但这些与 Java 有关


解决方案


暂无回答



所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:http://www.phpheidong.com/blog/article/558236/961959838af921d0a589/

来源:php黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

1 0
收藏该文
已收藏

评论内容:(最多支持255个字符)