Boa tarde pessoal!!
alguém pode me ajudar ? Preciso acessar o webservice da CVM
http://sistemas.cvm.gov.br/webservices/Sistemas/SCW/CDocs/WsDownloadInfs.asmx?WSDL
Pelo manual primeiro deve ser feito um login e após isso instanciar um método de sessão conforme abaixo através do header :
Para que um sistema cliente possa acessar determinadas funcionalidades do web service, deve-se inicialmente efetuar o Login no CVMWeb.Para isso, o método Login deve ser chamado, passando como parâmetros o identificador do sistema(iNrSist) e a senha de acesso(strSenha), fornecidos via e-mail após o processo de cadastro.
Esse método, assim como os demais, utiliza recurso de SOAP HEADER. O SOAP HEADER, chama-se sessaoIdHeader e é instanciado pelo próprio método.Em chamadas subseqüentes a outros métodos, o mesmo SOAP HEADER deve ser enviado ao web service.
Alguém sabe como eu envio esse soap header para fazer as demais requisições depois do login ?
XML
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Header>
<sessaoIdHeader xmlns="http://www.cvm.gov.br/webservices/">
<Guid></Guid>
<IdSessao></IdSessao>
</sessaoIdHeader>
</soap12:Header>
<soap12:Body>
<Login xmlns="http://www.cvm.gov.br/webservices/">
<iNrSist></iNrSist>
<strSenha></strSenha>
</Login>
</soap12:Body>
</soap12:Envelope>
Cliente PHP
<?php
require_once('../nusoap-0.9.5/lib/nusoap.php');
$client = new nusoap_client("http://sistemas.cvm.gov.br/webservices/Sistemas/SCW/CDocs/WsDownloadInfs.asmx?WSDL",true);
$error = $client->getError();
if ($error) {
echo "Constructor error".$error;
}
else
{
echo "ok";
}
$client->soap_defencoding = 'UTF-8';
$params = array("iNrSist" => "2019",
"strSenha" => "15288");
$result = $client->call("Login", $params);
?>