Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Ricardo II

Enviar xml via webservice

Recommended Posts

Olá pessoal, estou aqui mais um dia e com mais uma dúvida hauhauah,

 

Preciso montar um webservice parte cliente e parte servidor onde a parte cliente enviar um xml para a parte servidor tratar e processar a solicitação, porém não tenho ideia de como fazer, pesquisei na internet sobre soap e nusoap mas sem avanços alguém poderia me dar uma luz sobre como utilizar.

 

 

abraços a todos

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeiro você tem que criar um serviço de webservice, veja o exemplo:

 

arquivo: service.ws.php:

 

// *************** WEB SERVICE *************/
// criando as funcoes do seu webservice
function funcaoWeb1($xml){
 // utilizar funcao pra ler xml
}
function funcaoWeb2($xml){
// utilizra funcao pra ler xml
}
$uri = "http://seusite.com.br/ws/"; // link para o servico no caso onde ficara o arquivo service.ws.php
$server = new SoapServer(null,array('uri'=>$uri));
// abaixo você adiciona as funcoes que seu webservice vai oferecer:
$server->addFunction("funcaoWeb1");
$server->addFunction("funcaoWeb2");
if ($_SERVER['REQUEST_METHOD'] == "POST"){
$server->handle();
}
else {
echo "<h1>It's Work's</h1>"; // exibe que o serviço está funcionando
}

 

Agora você deve criar um arquivo que vai utilizar o servico

 

try {
  $soap = new SoapClient(null,array(
'uri'      => "http://seusite.com.br/ws",
'location' => "http://seusite.com.br/ws/service.ws.php",
'trace'    => '1'
  ));

  // xml a ser gerado
  $xml  = '<?xml version="1.0" encoding="utf-8"?>';
  $xml .= '<dados><cliente>nome</cliente></dados>';

  // chamando funcao do webservice
  $result = $soap->funcaoWeb1($xml);
  print_r($result);
}
catch (Exception $e){
   // caso ocorra algum erro
   echo "Trace:".$e->getTrace()."\n";
   echo "File:".$e->getFile()."\n";
   echo "Line:".$e->getLine()."\n";
   echo "Message: ".$e->getMessage()."\n";
}

 

E por ai, qualquer duvida diz ae!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.