Integração Web em Aplicativos FiveWin Por Vailton Renato
Quando se fala em “integração” WEB em Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com Quando se fala em “integração” WEB em aplicativos FW o que lhe veem à cabeça? Será que é apenas LER dados de uma HTML com FW? Seria talvez fornecer dados que estão em FW para uma página web?
Na realidade vamos analisar um pouco Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com Na realidade vamos analisar um pouco mais sobre isto... Iremos falar sobre: Obter dados externos com FWH Fornecer dados ao mundo Ferramentas de integração disponíveis
1º Exemplo: Preciso ler dados que estão Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com 1º Exemplo: Preciso ler dados que estão em uma página web – mas como fazer?
1º Exemplo: Preciso ler dados que estão Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com 1º Exemplo: Preciso ler dados que estão em uma página web – mas como fazer? Não se desespere! O que você precisa saber sobre HTML: ele é apenas TEXTO. Se é texto, pode ser manipulado como qqer TEXTO pois é oq ele é! Veja ex1 e ex2 e depois considere no prox. slide
Resumo breve: trabalhar com dados na Internet é trabalhar com TEXTO! Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com Resumo breve: trabalhar com dados na Internet é trabalhar com TEXTO!
Resumo breve: trabalhar com dados na Internet é trabalhar com TEXTO! Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com Resumo breve: trabalhar com dados na Internet é trabalhar com TEXTO! Se o resultado é texto, pode ser manipulado como qqer TEXTO usando AT(), SUBSTR(), RAT(), LEFT(), RIGHT(), etc... Se operar sobre o resultado é fácil, qual é entao o problema de se trabalhar com web muitas vezes?
Qual é o grande segredo (e muitas vezes) Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com Qual é o grande segredo (e muitas vezes) a grande barreira enfrentada ao se puxar Informações da internet ? Resposta: A conexão com o servidor onde está a informação! É necessário levar-se em conta se é HTTP, HTTPS, FTP, SSH, SOAP, REST, etc...
Quais opções temos para se puxar dados de uma determinada página? Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com Quais opções temos para se puxar dados de uma determinada página? Opção 1 de 3 - WinSock nativa do Windows, disponibilizada no FW. Muita coisa tem que ser manual e aparentemente ela não suporta SSL (protocolo de segurança). Exemplo webclien.prg na pasta samples
Quais opções temos para se puxar dados de uma determinada página? Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com Quais opções temos para se puxar dados de uma determinada página? Opção 2 de 3 - HBTIP É nativa do compilador e é multi-plataforma baseada na WinSock. Mesmo código roda em Windows, Linux, MAC OS, FreeBSD, etc. Já possui muita coisa pronta. Ela acessa HTTP, FTP, MAIL, etc... Na nova implementação tb suporte SSL
Quais opções temos para se puxar dados de uma determinada página? Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com Quais opções temos para se puxar dados de uma determinada página? Opção 3 de 3 – Acesso via COM. Alguns protocolos podem ser acessado por ferramentas de terceiros que oferecem suporte à varios protocolos. Como Exemplo disto temos a dica do Dorneles sobre ”Cotações: Dolar, euro” postada em 16/11/09 conforme exemplo do Manuel Mercado sobre como pegar informação em um site.
Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com Opção 3 de 3 – Acesso via COM. Outro exemplo no caso via SOAP é o exemplo do Pocket Soap no Fórum do PC Toledo! Agora que a Microsoft abandonou o MSSOAP, o melhor é usar PocketSoap, este é um exemplo que roda perfeitamente: local oEnvelope := Win_OleCreateObject( "PocketSOAP.Envelope.2" ) local oHttp := Win_OleCreateObject( "PocketSOAP.HTTPTransport.2" ) oEnvelope:EncodingStyle = "" oEnvelope:SetMethod( "InvertStringCase", "http://www.dataaccess.com/webservicesserver/" ) oEnvelope:Parameters:Create( "sAString", "THIS IS LOWER - this is upper" ) oHttp:Send( "http://www.dataaccess.com/webservicesserver/textcasing.wso?WSDL", oEnvelope:Serialize() ) oEnvelope:Parse( oHttp ) MsgInfo( oEnvelope:Parameters:Item( 0 ):Value )
Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com FWH Lendo dados Web? Sim e muito bem! Certamente podemos contar com isto para puxar dados de vários locais. Qual o próximo desafio? Se podemos ler os dados, o que fica faltando então?
Mas como fazer???? A próxima etapa é fornecer dados para Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com A próxima etapa é fornecer dados para WEB usando aplicativos FWH. Mas como fazer????
FWH fornecendo dados para WEB Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com FWH fornecendo dados para WEB Temos várias opções dentre elas são: Funções e Classes Nativas do FWH Características: single-thread, single process. Nativas do Harbour Características: Multi-thread, multi-process.
FWH fornecendo dados para WEB Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com FWH fornecendo dados para WEB Funções e Classes Nativas do FWH Exemplo do WebServer
Como fornecer dados para WEB (não necessariamente com FW) Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com Como fornecer dados para WEB (não necessariamente com FW) Nativas do Harbour Características: Multi-thread, multi-process. Exemplo Flexlista – xml – Adobe Flash – PHP
Informação adicional: fornecendo dados à web com CGI Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com Informação adicional: fornecendo dados à web com CGI Suporte à CGI-BIN Exemplos: BOL, Itau, Registro WebNet Podemos criar um CGI-BIN com .BAT, Clipper e Harbour!
Fornecendo dados à web com CGI Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com Fornecendo dados à web com CGI Existem várias LIBs que ajudam-nos à criar aplicativos CGI. Dentras as opções brasileiras podemos citar: WebWap Link: http://www.vagucs.com.br/webwap.php wxWeb Link: http://code.google.com/p/wxweb/
Como fornecer dados para WEB Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com Como fornecer dados para WEB Nativas do Harbour Características: Multi-thread, multi-process. Exemplo Flexlista – xml – Adobe Flash – PHP
Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com O que é a wxWeb? É um conjunto de funções e classes que visam auxiliar o desenvolvimento de aplicativos voltados para internet. É inspirada no PHP e busca facilitar o máximo a vida do programador. É de código aberto e você pode usar sem custo algum tanto para projetos comerciais ou não.
Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com
Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail Integração Web em Aplicativos FiveWin Vailton Renato – vailtom@gmail.com
Integração Web em Aplicativos FiveWin Dúvidas?