Параметры PHP SOAP не отправляются - PullRequest
1 голос
/ 07 февраля 2012

Я пытался использовать веб-сервис. Нужно использовать метод с параметрами, но не показываться в запросе мыла.

`
 $poli = new SoapClient($wsdl_url, array('trace'=>true));
 $params =array(
    'param1'=>'val1',
    'param2'=>'val2'
   );
 try {
var_dump($poli->__soapCall('InitiateTransaction', array('parameters' => $params)));
 }
 catch(SoapFault $fault) {
   die($fault->faultstring . " REQUEST: " . $this->poli->__getLastRequest() . "<br/> RESPONSE: " . $this->poli->__getLastResponse());
 }`

также я пытался:

var_dump($poli->InitiateTransaction(array('parameters' => $params)));

с тем же результатом, без параметров в мыльном конверте:

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://merchantapiservice.services.poli.centricom.com/">
<SOAP-ENV:Body>
   <ns1:InitiateTransaction/>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Пожалуйста, помогите:)

1 Ответ

1 голос
/ 23 сентября 2012

Можете ли вы опубликовать реальный URL WSDL, чтобы я мог видеть внутри определения веб-службы?По моему опыту, когда это случалось со мной в прошлом, потому что параметры, которые я передавал, не соответствовали определению wsdl.Это может быть связано с тем, что я ввел неправильное имя параметра или передал параметр в положение, отличное от указанного в wsdl.Из-за этого класс SoapClient не может создать правильный конверт.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...