SOAP请求Web服务的问题

时间:2018-10-26 11:00:53

标签: php web soap service

我必须使用带有POST方法的SOAP向Web服务发出请求,并且提供了它们提供的示例XML,我必须将其用于向WS的请求,而没有关于如何做的更多信息? 我尝试访问的Web服务用于身份验证,而我尝试的PHP代码包括登录名和密码信息。

<?php
$usuario = "login";
$password = "pass";


$strXml = "<soapenv:Envelope xmlns:soapenv=\'http://schemas.xmlsoap.org        /soap/envelope/\' xmlns:guia=\'link to .wsdl\'>
                            <soapenv:Header/>
                                <soapenv:Body>
                                    <guia:infoUser>
                                    <guia:nif>userNIF</guia:nif>
                                    </guia:infoUser>
                                </soapenv:Body>
                            </soapenv:Envelope>";


                                                $wsdl = 'LINK TO WSDL???.wsdl';
                                        $namespace = 'Here i think i need to put the link that goes to the part of auth on the wsdl';
                                        $credentials = (object)array(
                                            'login' => $usuario,
                                            'pass' => $password
                                        );
                                        $auth_values = new SoapVar($credentials, SOAP_ENC_OBJECT);
                                        $header =  new SoapHeader($namespace, "authGUIA", $auth_values);

                                        // set client, headers, and call function
                                        $client = new SoapClient($wsdl, array('trace' => true));
                                        $client->__setSoapHeaders(array($header));

我尝试了很多事情,但我不知道,还有什么可以尝试的?我做了很多测试,有的会给我消息“您必须使用POST而不是GET方法,因为密码将存储在日志中。”

如果在我的某些代码正确的情况下有人可以为我的问题提供解释/解决方案,我将不胜感激。

谢谢。

0 个答案:

没有答案