Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

zichev

webservices

Mensagens Recomendadas

zichev

Gostava de retirar informações de um webservice, e como primeiro teste

tentei isto:

<?php

$wsdl_url =

  "http://api.google.com/GoogleSearch.wsdl";'>http://api.google.com/GoogleSearch.wsdl";

$client    = new SoapClient($wsdl_url);

var_dump($client->__getFunctions());

?>

E deu-me isto :thumbsup:

Warning: SoapClient::SoapClient(http://api.google.com/GoogleSearch.wsdl) [soapclient.soapclient]: failed to open stream: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. in C:\xampp\htdocs\xampp\php\index.php on line 6

Warning: SoapClient::SoapClient() [soapclient.soapclient]: I/O warning : failed to load external entity "http://api.google.com/GoogleSearch.wsdl" in C:\xampp\htdocs\xampp\php\index.php on line 6

Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://api.google.com/GoogleSearch.wsdl' : failed to load external entity "http://api.google.com/GoogleSearch.wsdl" in C:\xampp\htdocs\xampp\php\index.php:6 Stack trace: #0 C:\xampp\htdocs\xampp\php\index.php(6): SoapClient->SoapClient('http://api.goog...') #1 {main} thrown in C:\xampp\htdocs\xampp\php\index.php on line 6

Já verifiquei o php.ini e está habilitado o php_soap.dll

Algum entendido pode me ajudar...parece que dá erros com todos os webservices :wallbash:

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
djthyrax

Tens a certeza que não te enganaste no URL do serviço?


Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
zichev

Não me enganei...

Já testei com python e ele lista os métodos, podes tu mesmo verificar.

Também já testei de outras formas e não obtive resultados.

Se alguém já trabalhou com webservices em php, por favor explique como conseguiu, estou sem ideias.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
djthyrax

Infelizmente nunca usei webservices em PHP, desculpa :thumbsup:


Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
M6

Para saberes os serviços basta fazeres uma invocação http ao wsdl.

Esse SoapClient é capaz de ser mais um cliente SOAP para invocar mesmo um serviço, não?...


10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
The Loser

Bem, o php_soap.dll não é de certeza, senão ele dava-te um único erro, que era a omissão de uma classe chamada SoapClient.

Quanto ao caso concreto em si, eu consigo conectar-me e obter as funções com as exactas linhas de código que usaste.

A chave está aqui:

Warning: SoapClient::SoapClient(http://api.google.com/GoogleSearch.wsdl) [soapclient.soapclient]: failed to open stream: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. in C:\xampp\htdocs\xampp\php\index.php on line 6

Algo está a impedir a interacção entre as duas interfaces.

Infelizmente nunca me sucedeu tal coisa, e não sei nenhum workaround :(

Sorry buddy

P.S. - Boo xampp,

:P


I intend to live forever. So far so good.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
M6

Tanta coisa por causa de um erro de timeout???...


10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.