Conceitos Fundamentais da Web: URI, HTTP, SOA e Padrões

Classificado em Computação

Escrito em em português com um tamanho de 4,35 KB

URI – Uniform Resource Identifier

Identificador simples e extensível de recursos na WWW.

Componentes:

  • Identificador: Distingue uma coisa de todas as outras no mesmo escopo.
  • Recurso: Não faz qualquer limitação – pode ser, por exemplo, um documento, uma imagem, um serviço ou uma coleção de recursos.
  • Uniforme: Permite a identificação de diferentes recursos no mesmo contexto, independentemente dos mecanismos de acesso a eles (software, protocolo, etc.).

HyperText Transfer Protocol (HTTP)

Protocolo de aplicação responsável pelo tratamento de pedidos/respostas entre cliente e servidor na World Wide Web.

Requisições contêm:

  • Método HTTP
  • Identificador de recurso (URI)
  • Dados opcionais

Métodos HTTP

  • GET: 'Pega' um recurso especificado através de sua URI.
  • POST: Posta informações no servidor, passadas como parte do conteúdo, não havendo necessidade de se acrescentar algo à URI.
  • HEAD: Faz o mesmo que o GET, mas sem o corpo da resposta. É usado para obter os metadados do recurso.
  • PUT: Faz upload de um recurso.
  • DELETE: Apaga o recurso especificado.
  • OPTIONS: Recupera os métodos HTTP que o servidor aceita.
  • TRACE: Ecoa o pedido requisitado para saber o que os servidores intermediários estão mudando ou adicionando à requisição.
  • CONNECT: Requisita a criação de um túnel TCP/IP para conexões seguras.

Mensagens de Retorno (Códigos de Status HTTP)

  • 1xx: Informational (Informação)
  • 2xx: Success (Sucesso)
  • 3xx: Redirection (Redirecionamento)
  • 4xx: Client Error (Erro no cliente)
  • 5xx: Server Error (Erro no servidor)

Padrões Web

Estruturas consensuais para representação de informações e comportamentos das aplicações Web.

Garantem:

  • Interpretação correta em qualquer contexto.
  • Redução de custos de desenvolvimento (dispensa versões alternativas).
  • Interoperabilidade entre aplicações.

Arquitetura das Aplicações Web

Softwares da Web

Incluem:

  • Clientes: Navegadores (Firefox, Internet Explorer, Chrome, Opera, Safari, Celulares, PDAs, TVs, …), Dispositivos específicos (GPS, computadores de bordo, geladeiras, etc.).
  • Servidores: Apache, IIS, WebObjects, WEBrick, Sun Java System Web Server, ...

Aplicação Web

Sistema de informação composto por um conjunto de hipertextos dinâmicos (executado na Web).

Inclui procedimentos que são executados no servidor e procedimentos executados no cliente (navegador).

O Lado do Servidor

Responsável pela construção dos hipertextos (páginas da Web) solicitados pelo usuário, através do cliente.

O Lado do Cliente

Responsável pela apresentação interativa dos hipertextos gerados no servidor.

Os hipertextos podem conter especificações para inclusão, pelo navegador, de componentes de outros servidores.

Service Oriented Architecture (SOA)

SOA é uma arquitetura que representa funcionalidades do software como serviços.

Tecnologias que se assemelham ao SOA incluem: RMI, CORBA, etc.

A interoperabilidade é muito importante e garante:

  • Padronização
  • Fraco acoplamento

Visão Tecnológica (Web Services)

É uma tecnologia de chamada remota de objetos que:

  • Permite a infraestrutura para criação de aplicações distribuídas.
  • Permite a criação de pequenos módulos de código reutilizáveis e disponibilizados para construção de aplicações.
  • Utiliza protocolos Web como meio de transporte e comunicação.
  • Oferece alto grau de abstração em relação a linguagens de programação e plataformas.

A Web Services Description Language (WSDL) é uma linguagem baseada em XML utilizada para descrever Web Services, funcionando como um contrato do serviço.

WSDL 1.1 – Serviço: Container para conjunto de funções.

Entradas relacionadas: