
Atualmente, existem várias interfaces disponíveis para desenvolver aplicativos Web. Estas opções incluem, por exemplo: Common Gateway Interface (CGI), Internet Server API (ISAPI), Tecnologias ONE (Netscape) e DNA (Microsoft), Java, JavaScripts, Jscripts, VBScripts, ASP, PHP, Perl .. etc
A Tecnocoop oferece suporte de programação Internet através das seguintes opções:
- A linguagem OPUS permite desenvolver aplicativos Internet para ambientes UNIX
- A linguagem OPUSWin permite desenvolver aplicativos Internet para ambientes Win32
- Scripts Java e Visual Basic podem ser embutidos nos aplicativos Web escritos mas linguagens OPUS e OpusWin
- Os Bancos de Dados OpenBASE podem ser acessados como objetos COM/DCOM através de "Server Scripts" em PHP, ASP, Perl … etc …
Em suma, utilizando os recursos da OPUS e da OPUSWin podem ser produzidos aplicativos cliente / servidor para plataformas Internet e Intranet.
Nesses ambientes cliente / servidor:
- o cliente pode ser qualquer Browser Web padrão, residente em qualquer plataforma, seja ela Windows, UNIX, OS/2, Mac ou simples terminais que utilizam o serviço-cliente de um host
- o servidor Web pode ser qualquer um para ambientes UNIX e Win32
O termo CGI significa "Common Gateway Interface". O termo Gateway foi atribuído por se tratar de um programa que atende pedidos de informação e retorna os documentos solicitados, freqüentemente gerados numa dinâmica "on the fly". A idéia central é que esse programa, também chamado "script", constitui um Gateway para obter informações e executar funções normalmente não implementadas num servidor Web, por exemplo, acesso a Bancos de Dados, tradução de documentos … etc ...
Os programas CGI podem ser escritos em várias linguagens, incluindo o C, C++, Java Scripts, VB Scripts, Jscripts, Java, Perl, Pascal, ou mesmo um shell / batch.
Seja qual for o sistema operacional em que reside o servidor Web, uma transação HTTP utilizando a interface CGI apresenta a seguinte estrutura de funcionamento:
- O cliente (ou "user agent") solicita um recurso do servidor HTTP
- O servidor HTTP verifica a requisição do cliente e determina se vai ser executado um programa CGI ou (apenas) carregar um documento (página) HTML previamente elaborado
- O servidor transmite a esse novo processo (programa CGI) as informações que caracterizam o ambiente
- O programa CGI inicia a sua execução, obtendo as variáveis de ambiente (passadas pelo servidor) para determinar que ações deverão ser tomadas
- O aplicativo CGI obtém (da "stdin") as informações "postadas" pelo Browser Web e grava (em "stdout") os documentos produzidos pelo programa CGI
- O servidor Web obtêm as informações gravadas pelo aplicativo CGI e as transmite ao cliente Browser em resposta ao pedido originado no cliente
- O servidor Web finaliza o processo, liberando todos os recursos associados
ISAPI (Internet Server Application Programming Interface) é uma interface de programação para servidores Web que permite:
- Incorporar funções do aplicativo dentro do próprio servidor WEB, estendendo, as suas funcionalidades sem criar processos adicionais. Estas "extensions" da ISAPI também recebem o nome de "server applications".
- Acrescentar "filtros" nos estágios básicos do processamento das transações HTTP, obtendo, assim, um alto grau de funcionalidade, de acordo com as necessidades específicas do aplicativo.
Existem várias razões que aconselham utilizar a ISAPI:
- A ISAPI não é apenas um CGI melhor: é diferente e foi desenvolvida para resolver as deficiências do CGI
- A ISAPI precisa de menos recursos do que a CGI, permitindo atender maior número de usuários de forma simultânea.
- A ISAPI acrescenta novas funcionalidades ao servidor Web, a nível mais profundo que o CGI.
