Consumindo WebService com PHP?

1,870 views
Skip to first unread message

s7evens

unread,
Jun 19, 2008, 11:13:45 AM6/19/08
to PHP MG, ralm...@uabrasil.com.br
Boa dia galera,

Sou novo por aqui, conhece a comunidade e o grupo pelo iMasters, e
vamos tocar o grupo ajudando no que for possivel.

Atualmente, estou envolvido em um projeto, qual vem me gerando uma dor
de cabeça desagradavel cada vez que tenho que pensar em como fazer
isso rodar.

Nunca trabalhei com webservices, e atualmente venho estudando muito
sobre essa ferramenta, mas ainda tenho muitas duvidas. Uma delas é
como consumir um webservice através do nosso amigo PHP. E logico que
muito vão citar alguns dos tutoriais que são apresentados no iMasters
mesmo pelo Mauricio Reckziegel. Mas mesmo com esse tuto que ele posto
ainda tenho muitas duvidas.

Atualmente trabalho num grupo dono de concesionarias em São Paulo, e
eles inclusive são donos agora da Toyota Kawaii ai de BH :), bom com
isso eles fazem anuncios na WebMotors, mas é o seguinte, os dados para
acessar a webmotors requerem CNPJ, Email e senha, e como o grupo
dispões de operadores Web não podemos fornecer esses dados para eles,
então uma empresa qual hoje presta serviços para o grupo na base de
web tem um sistema qual é integrado com a webmotors, gerando apenas um
usuario e senha para os webboys e la eles tem um form para gerar esses
anuncios direto na webmotors, puxando campos como marca, modelo, ano
valor etc.

A webmotors me disponibiliza todas as urls de produção e homologação,
porem como eu ja havia dito antes tenho muitas duvidas de como
consumir isso no PHP pois vou trabalhar com o Joomla para desenvolver
todos os novos recursos para um novo site.

A pergunta é como eu faço para consumir todos esses dados, gerar uma
pagina com os campos para publicar os carros direto na webmotors, como
devo ao menos inicilizar esse projeto.

Se alguem puder me ajudar agradeço muito.

Att

Raphael M Almeida

Silvano Girardi Jr

unread,
Jun 19, 2008, 11:45:19 AM6/19/08
to ph...@googlegroups.com
Bom dia Raphael!

Já ouviu falar de SCA (Service Component Architecture)?

Não se assuste pelo nome! :)

Vou dar uma palestra nesse fim de semana a respeito disso (mas em Santa Catarina) e vou disponibilizar os slides no meu site também no fim de semana. (Inclusive estou atrasado para meu vôo)

http://www.osoa.org/display/PHP/SOA+PHP+Homepage
http://pecl.php.net/SCA_SDO

Com esta extensão é muito fácil consumir webservices. Dá uma lida no site. Qualquer coisa posta dúvidas aqui que te ajudo.

Abraço,
Silvano

2008/6/19 s7evens <s7e...@gmail.com>:

s7evens

unread,
Jun 19, 2008, 1:13:23 PM6/19/08
to PHP MG
Amigo agradeço muito sua atenção,

Mas como você mesmo disse da pra se assustar um pouco com o nome sim.
Eu dei uma olhada e pelo oq você disse realmente deve ser muito facil
e simples de se trabalhar com ele, mas ai que esta o problema como eu
devo começar esse processo?

Obrigado amigo e boa sorte na sua palestra, adoraria estar presente :(

mesmo assim fica aki meu agradecimento.

On 19 jun, 12:45, "Silvano Girardi Jr" <silvan...@gmail.com> wrote:
> Bom dia Raphael!
>
> Já ouviu falar de SCA (Service Component Architecture)?
>
> Não se assuste pelo nome! :)
>
> Vou dar uma palestra nesse fim de semana a respeito disso (mas em Santa
> Catarina) e vou disponibilizar os slides no meu site também no fim de
> semana. (Inclusive estou atrasado para meu vôo)
>
> http://www.osoa.org/display/PHP/SOA+PHP+Homepagehttp://pecl.php.net/SCA_SDO
>
> Com esta extensão é muito fácil consumir webservices. Dá uma lida no site.
> Qualquer coisa posta dúvidas aqui que te ajudo.
>
> Abraço,
> Silvano
>
> 2008/6/19 s7evens <s7ev...@gmail.com>:

Rafael Gomes Dantas

unread,
Jun 19, 2008, 1:36:20 PM6/19/08
to ph...@googlegroups.com
Se o webservice for em SOAP, você pode fazer usando o nuSOAP.

2008/6/19 s7evens <s7e...@gmail.com>:

s7evens

unread,
Jun 19, 2008, 2:09:19 PM6/19/08
to PHP MG
Ola Rafael,

Ja li sobre esse sistema nuSoap, e vem a grande duvida, eu nunca
utilizei esses sistemas anteriormente, não sei como configurar,
instalar, implantar, atualizar, gerar, programar ou qq coisa como tal.

A minha maior duvida é como eu devo começar, oq devo fazer, como
aplico a ferramenta, como configuro ou qq coisa similar ...

On 19 jun, 14:36, "Rafael Gomes Dantas" <raf...@gmail.com> wrote:
> Se o webservice for em SOAP, você pode fazer usando o nuSOAP.
>
> 2008/6/19 s7evens <s7ev...@gmail.com>:
>
>
>
> > Amigo agradeço muito sua atenção,
>
> > Mas como você mesmo disse da pra se assustar um pouco com o nome sim.
> > Eu dei uma olhada e pelo oq você disse realmente deve ser muito facil
> > e simples de se trabalhar com ele, mas ai que esta o problema como eu
> > devo começar esse processo?
>
> > Obrigado amigo e boa sorte na sua palestra, adoraria estar presente :(
>
> > mesmo assim fica aki meu agradecimento.
>
> > On 19 jun, 12:45, "Silvano Girardi Jr" <silvan...@gmail.com> wrote:
> > > Bom dia Raphael!
>
> > > Já ouviu falar de SCA (Service Component Architecture)?
>
> > > Não se assuste pelo nome! :)
>
> > > Vou dar uma palestra nesse fim de semana a respeito disso (mas em Santa
> > > Catarina) e vou disponibilizar os slides no meu site também no fim de
> > > semana. (Inclusive estou atrasado para meu vôo)
>
> >http://www.osoa.org/display/PHP/SOA+PHP+Homepagehttp://pecl.php.net/S...

Anderson Unsonst

unread,
Jun 19, 2008, 2:18:29 PM6/19/08
to ph...@googlegroups.com

s7evens

unread,
Jun 19, 2008, 2:22:38 PM6/19/08
to PHP MG
Opa Anderson,

Eu baixei aqui, mas preciso saber oq devo fazer com os arquivos.
Tenho que hostear, colocar em alguma pasta especifica?

Obrigado

On 19 jun, 15:18, "Anderson Unsonst" <andersonunso...@gmail.com>
wrote:
> nunca usei mas esse vem com algums exemplos bacanashttp://sourceforge.net/project/showfiles.php?group_id=57663&package_i...

Silvano Girardi Jr

unread,
Jun 19, 2008, 3:50:22 PM6/19/08
to ph...@googlegroups.com
O webservice da Webmotors é em que? SOAP? REST? JSON?

Seja lá o que for. você pode consumir os serviços com SCA dessa forma:

(Exemplo com SOAP)
$objeto = SCA::getService('http://www.webmotors.com.br/.../Servico?wsdl');

E o $objeto terá todos os métodos disponíveis.

$objeto->listarCarros(); // supondo que exista um método com esse nome no serviço

Silvano

2008/6/19 s7evens <s7e...@gmail.com>:

s7evens

unread,
Jun 19, 2008, 3:54:47 PM6/19/08
to PHP MG
Ele é em SOAP 1.1 ou 1.2

O que ele me disponibiliza é isso aqui :

Exemplo:

URL de produção para alterar carro: quando clico essa URL ele me
apresenta uma tela com essas informações para SOAP 1.1 por exemplo.

alterarCarro

Test
The test form is only available for requests from the local machine.
SOAP 1.1

The following is a sample SOAP 1.1 request and response. The
placeholders shown need to be replaced with actual values.

POST /IntegracaoRevendedor/wsEstoqueRevendedor.asmx HTTP/1.1
Host: www.webmotors.com.br
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "www.webmotors.com.br/wsEstoqueRevendedor/alterarCarro"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://
schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<alterarCarro xmlns="www.webmotors.com.br/wsEstoqueRevendedor">
<hashAutenticacao>string</hashAutenticacao>
<anuncioWM>
<AdaptadoDeficientesFisicos>string</
AdaptadoDeficientesFisicos>
<Alienado>string</Alienado>
<AnoDoModelo>int</AnoDoModelo>
<AnoFabricacao>int</AnoFabricacao>
<Blindado>string</Blindado>
<Cambio>string</Cambio>
<CodigoAnuncio>decimal</CodigoAnuncio>
<CodigoMarca>decimal</CodigoMarca>
<CodigoModalidade>decimal</CodigoModalidade>
<CodigoModelo>decimal</CodigoModelo>
<CodigoVersao>decimal</CodigoVersao>
<Combustivel>string</Combustivel>
<CorExterna>string</CorExterna>
<CodigoCor>string</CodigoCor>
<CorInterna>string</CorInterna>
<DataInclusao>string</DataInclusao>
<DataUltimaAlteracao>string</DataUltimaAlteracao>
<GarantiaDeFabrica>string</GarantiaDeFabrica>
<IpvaPago>string</IpvaPago>
<Km>int</Km>
<Licenciado>string</Licenciado>
<NrPortas>int</NrPortas>
<Observacao>string</Observacao>
<OpcionalNovo>
<OpcionalNovoWM>
<CodigoOpcional>decimal</CodigoOpcional>
<CodigoEspecificacaoTecnica>decimal</
CodigoEspecificacaoTecnica>
<Detalhes>string</Detalhes>
<Nome>string</Nome>
<TipoOpcional>string</TipoOpcional>
</OpcionalNovoWM>
<OpcionalNovoWM>
<CodigoOpcional>decimal</CodigoOpcional>
<CodigoEspecificacaoTecnica>decimal</
CodigoEspecificacaoTecnica>
<Detalhes>string</Detalhes>
<Nome>string</Nome>
<TipoOpcional>string</TipoOpcional>
</OpcionalNovoWM>
</OpcionalNovo>
<OpcionalUsado>
<OpcionalUsadoWM>
<CodigoOpcionalUsado>decimal</CodigoOpcionalUsado>
<Descricao>string</Descricao>
<CodigoRetorno>string</CodigoRetorno>
</OpcionalUsadoWM>
<OpcionalUsadoWM>
<CodigoOpcionalUsado>decimal</CodigoOpcionalUsado>
<Descricao>string</Descricao>
<CodigoRetorno>string</CodigoRetorno>
</OpcionalUsadoWM>
</OpcionalUsado>
<Placa>string</Placa>
<PrecoRevenda>decimal</PrecoRevenda>
<PrecoVenda>decimal</PrecoVenda>
<RevisadoOficinaAgendaDoCarro>string</
RevisadoOficinaAgendaDoCarro>
<RevisoesEmConcessionadia>string</RevisoesEmConcessionadia>
<CodigoVersaoAno>decimal</CodigoVersaoAno>
<TipoAnuncio>string</TipoAnuncio>
<UnicoDono>string</UnicoDono>
<CodigoRetorno>string</CodigoRetorno>
</anuncioWM>
</alterarCarro>
</soap:Body>
</soap:Envelope>

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://
schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<alterarCarroResponse xmlns="www.webmotors.com.br/
wsEstoqueRevendedor">
<alterarCarroResult>
<AdaptadoDeficientesFisicos>string</
AdaptadoDeficientesFisicos>
<Alienado>string</Alienado>
<AnoDoModelo>int</AnoDoModelo>
<AnoFabricacao>int</AnoFabricacao>
<Blindado>string</Blindado>
<Cambio>string</Cambio>
<CodigoAnuncio>decimal</CodigoAnuncio>
<CodigoMarca>decimal</CodigoMarca>
<CodigoModalidade>decimal</CodigoModalidade>
<CodigoModelo>decimal</CodigoModelo>
<CodigoVersao>decimal</CodigoVersao>
<Combustivel>string</Combustivel>
<CorExterna>string</CorExterna>
<CodigoCor>string</CodigoCor>
<CorInterna>string</CorInterna>
<DataInclusao>string</DataInclusao>
<DataUltimaAlteracao>string</DataUltimaAlteracao>
<GarantiaDeFabrica>string</GarantiaDeFabrica>
<IpvaPago>string</IpvaPago>
<Km>int</Km>
<Licenciado>string</Licenciado>
<NrPortas>int</NrPortas>
<Observacao>string</Observacao>
<OpcionalNovo>
<OpcionalNovoWM>
<CodigoOpcional>decimal</CodigoOpcional>
<CodigoEspecificacaoTecnica>decimal</
CodigoEspecificacaoTecnica>
<Detalhes>string</Detalhes>
<Nome>string</Nome>
<TipoOpcional>string</TipoOpcional>
</OpcionalNovoWM>
<OpcionalNovoWM>
<CodigoOpcional>decimal</CodigoOpcional>
<CodigoEspecificacaoTecnica>decimal</
CodigoEspecificacaoTecnica>
<Detalhes>string</Detalhes>
<Nome>string</Nome>
<TipoOpcional>string</TipoOpcional>
</OpcionalNovoWM>
</OpcionalNovo>
<OpcionalUsado>
<OpcionalUsadoWM>
<CodigoOpcionalUsado>decimal</CodigoOpcionalUsado>
<Descricao>string</Descricao>
<CodigoRetorno>string</CodigoRetorno>
</OpcionalUsadoWM>
<OpcionalUsadoWM>
<CodigoOpcionalUsado>decimal</CodigoOpcionalUsado>
<Descricao>string</Descricao>
<CodigoRetorno>string</CodigoRetorno>
</OpcionalUsadoWM>
</OpcionalUsado>
<Placa>string</Placa>
<PrecoRevenda>decimal</PrecoRevenda>
<PrecoVenda>decimal</PrecoVenda>
<RevisadoOficinaAgendaDoCarro>string</
RevisadoOficinaAgendaDoCarro>
<RevisoesEmConcessionadia>string</RevisoesEmConcessionadia>
<CodigoVersaoAno>decimal</CodigoVersaoAno>
<TipoAnuncio>string</TipoAnuncio>
<UnicoDono>string</UnicoDono>
<CodigoRetorno>string</CodigoRetorno>
</alterarCarroResult>
</alterarCarroResponse>
</soap:Body>
</soap:Envelope>



On 19 jun, 16:50, "Silvano Girardi Jr" <silvan...@gmail.com> wrote:
> O webservice da Webmotors é em que? SOAP? REST? JSON?
>
> Seja lá o que for. você pode consumir os serviços com SCA dessa forma:
>
> (Exemplo com SOAP)
> $objeto = SCA::getService('http://www.webmotors.com.br/.../Servico?wsdl');
>
> E o $objeto terá todos os métodos disponíveis.
>
> $objeto->listarCarros(); // supondo que exista um método com esse nome no
> serviço
>
> Silvano
>
> 2008/6/19 s7evens <s7ev...@gmail.com>:
>
>
>
> > Amigo agradeço muito sua atenção,
>
> > Mas como você mesmo disse da pra se assustar um pouco com o nome sim.
> > Eu dei uma olhada e pelo oq você disse realmente deve ser muito facil
> > e simples de se trabalhar com ele, mas ai que esta o problema como eu
> > devo começar esse processo?
>
> > Obrigado amigo e boa sorte na sua palestra, adoraria estar presente :(
>
> > mesmo assim fica aki meu agradecimento.
>
> > On 19 jun, 12:45, "Silvano Girardi Jr" <silvan...@gmail.com> wrote:
> > > Bom dia Raphael!
>
> > > Já ouviu falar de SCA (Service Component Architecture)?
>
> > > Não se assuste pelo nome! :)
>
> > > Vou dar uma palestra nesse fim de semana a respeito disso (mas em Santa
> > > Catarina) e vou disponibilizar os slides no meu site também no fim de
> > > semana. (Inclusive estou atrasado para meu vôo)
>
> >http://www.osoa.org/display/PHP/SOA+PHP+Homepagehttp://pecl.php.net/S...
Reply all
Reply to author
Forward
0 new messages