APLICAÇÕES E SERVIÇOS WEB

Documentos relacionados
Programação para Internet I. 2. O protocolo HTTP. Nuno Miguel Gil Fonseca nuno.fonseca@estgoh.ipc.pt

Redes de Computadores Grupo de Redes de Computadores

Java Enterprise Edition. by Antonio Rodrigues Carvalho Neto

Desenvolvimento Web Histórico da Internet e Protocolos

Programação para Internet Flávio de Oliveira Silva, M.Sc.

Desenvolvimento Web Protocolos da Internet

O protocolo HTTP. O que é o protocolo HTTP?

PHP: Cookies e Sessões

Aulas Práticas. Implementação de um Proxy HTTP. O que é um proxy?

Linguagem de. Aula 06. Profa Cristiane Koehler

Web. Até a década de 1990, a Internet era utilizada. por pesquisadores, acadêmicos e universitários, para troca de arquivos e para correio eletrônico.

rumo ao HTTP 2.0 o que vem por aí e o que você pode utilizar já com SPDY

Aula 1 Cleverton Hentz

Universidade Federal do Espírito Santo CCA UFES. Centro de Ciências Agrárias CCA UFES Departamento de Computação. Programação WEB

Internet e protocolos web. A Internet é uma rede descentralizada de recursos computacionais. Topologia tem de fornecer caminhos alternativos

O protocolo HTTP. Você aprenderá: O que é e como funciona o protocolo HTTP. Quais são as partes de um pedido HTTP.

LINGUAGEM DE PROGRAMAÇÃO WEB

Universidade Federal de Mato Grosso

Como se defender utilizando software livre na era da espionagem

Capítulo 7. Hyper Text Transfer Protocol (HTTP). Serviço Apache. - Protocolo HTTP - Sessão HTTP - Configuração do serviço Apache

Programação WEB II. Formulários Em PHP. Métodos GET e POST progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza

Ferramentas para Internet CST Sistemas para Internet

CURSO EFA DE TÉCNICO DE INFORMÁTICA E SISTEMAS. Módulo 788- Administração de Servidores Web. Ano letivo Docente: Ana Batista

Aula 14 Serviços Internet (Servidor Web Apache)

Redes de Computadores Camada de Aplicação. Prof. MSc. Hugo Souza

HyperText Transfer Protocol (HTTP)

Input de dados a partir de formulários HTML

Sistemas Distribuídos na Web. Pedro Ferreira DI - FCUL

Criando e consumindo Web service REST com PHP e JSON. Palestrante: Weiberlan Garcia

Hyper Text Transfer Protocol (HTTP) ADI HTTP 1/18

REDES DE COMPUTADORES. Prof. Evandro Cantú

WWW, CGI e HTTP Java Deployment Course: Aula 2. por Jorge H. C. Fernandes (jhcf@di.ufpe.br) DI-UFPE 28 de Abril de 1999

Universidade da Beira Interior

Tecnologias Web. Formulários HTML

Breve introdução a User Dir e Senhas no Apache Uma abordagem prática (aka crash course on User Dir and Directory Authentication on Apache)

Redes de Computadores

Java, HTTP, CGI e Linguagens de Scripting

Redes de Computadores e a Internet

Ajax não é dependente dos servidores Web, e como tal poderá ser usado com PHP, JSP, ASP e ASP.NET.

Criação de um Web Services em.net

Tópicos de Ambiente Web Conceitos Fundamentais Redes de Dados

Cookies e sessões. HTTP é um protocolo que não mantém estado, isto é não tem memória.

Web. Professor: Rodrigo Alves Sarmento

Aplicativos para Internet Aula 01

Conceitos de Ajax Exemplos de uso do Ajax no braço, muitos exemplos, muito código (HTML, CSS, JavaScript, PHP, XML, JSON)

programação de páginas de conteúdo dinâmico

Guia de iniciação Bomgar B400

HYPERTEXT TRANSFER PROTOCOL

1.264 Lição 11. Fundamentos da Web

Tecnologias da Internet (T) Avaliação de Frequência (versão A) 120 minutos *

Introdução a WEB. Contato: <lara.popov@ifsc.edu.br> Site:

Programação para Web

Conteúdo Dinâmico. Introdução. Interação Browser x Servidor Web. Interação Browser x Servidor Web

Programação para a Internet. Prof. M.Sc. Sílvio Bacalá Jr sbacala@gmail.com

Criação de um Web Services em.net

LABORATÓRIO DE INTERCONEXÃO DE REDES DE COMPUTADORES. SERVIÇOS ADICIONAIS: Conceituação, Instalação e Configuração

Curso de Aprendizado Industrial Desenvolvedor WEB

Rede de Computadores (REC)

Comunicação entre Processos

Linguagem de Estruturação e Apresentação de Conteúdos

Programando em PHP. Conceitos Básicos

Programação Web. Professor: Diego Oliveira. Conteúdo 02: JSP e Servlets

Enviado dados para o PHP através de formulário

PÓS-GRADUAÇÃO EM MATEMÁTICA COMPUTACIONAL INFORMÁTICA INSTRUMENTAL Aula 06: Introdução Linguagem HTML

UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática

Redes de Computadores

SCE-557. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello

Documentação da API Likestore

Criação de páginas web

Desenvolvimento Web com JSP/Servlets

Estruturas de Comunicação de Dados Aula 3 Camadas de Aplicação e Transporte

Web das Coisas WoT. Software: APIs para IoT. Prof. João Bosco Teixeira Junior

Software Adobe DreamWeaver. Requisitos para criar aplicações Web

Instalando servidor Apache

Cálculo Remoto de Preços e Prazos de Encomendas

Internet. Gabriela Trevisan Bacharel em Sistemas de Infomação

Redes de Computadores (RCOMP 2014/2015)

Departamento de Informática

CONCEITOS INICIAIS. Agenda A diferença entre páginas Web, Home Page e apresentação Web;

World Wide Web e Aplicações

Consultas SQL por XML-RPC no WordPress José Antonio Meira da Rocha

Teia de alcance mundial (World Wide Web WWW) Web composta de

6127. Redes comunicação de dados. 2014/2015. Acesso à Internet.

Redes TCP/IP. Prof. M.Sc. Alexandre Fraga de Araújo. INSTITUTO FEDERAL DO ESPÍRITO SANTO Campus Cachoeiro de Itapemirim

Licenciatura em Eng.ª Informática Redes de Computadores - 2º Ano - 2º Semestre. Trabalho Nº 1 - Ethereal

CGI Common Gateway Interface. É um standard para transmitir dados entre um servidor web e uma aplicação externa

Protocolo HTTP. Palavras-chave: Navegador, aplicativos, web, cliente, servidor.

HTML. Sessão 1 HTML. Cliente: browser (IE, por exemplo) Servidor: IIS (Internet Information Server), Apache, WebSphere,...

Web Services. Autor: Rômulo Rosa Furtado

Transcrição:

http://tutorials.jenkov.com/web-services/message-formats.html APLICAÇÕES E SERVIÇOS WEB Laboratórios de Informática 2014-2015 João Paulo Barraca, André Zúquete, Diogo Gomes

Aplicações WEB A maioria de nós utiliza hoje aplicações que não residem no nosso computador Google (Gmail, Docs) Microsoft (Outlook.com, Office 365) Facebook elearning.ua.pt

Como funciona uma aplicação web Através de uma aplicação genérica residente no nosso computador IE, Chrome, Firefox, Opera, etc Comunicação com um servidor remoto através do protocolo HTTP Servidor remoto capaz de servir centenas/milhares de clientes Apache, IIS, nginx

O que é um Servidor WEB? É um programa de computador que comunica um recurso (página HTML, imagem, vídeo) a um programa cliente (Web Browser) através do uso do protocolo HTTP

Protocolo HTTP Protocolo Cliente-Servidor Suportado em TCP Popularizado em 1990 por Tim Berners-Lee Criação da World Wide Web Protocolo baseado em Texto

HTTP Request HTTP Method URL relativo ou URL absoluto HTTP Version GET / HTTP/1.1 Accept:*/* Accept-Language: en-gb Accept-Encoding: gzip, deflate User-Agent: Mozilla/4.0 (compatible; MSI 6.0) Host: www.ua.pt Connection: Keep-Alive Cabeçalho

HTTP Response Status line Cabeçalho Duplo CRLF (carriage return, line feed) Conteúdos pedidos HTTP/1.1 200 OK Server: Microsoft-IIS/7.5 Set-Cookie: ASP.NET_SessionId=5xf5yjpvgjhxdkzghywlabmu; path=/; HttpOnly Content-Type: text/html; charset=utf-8 X-AspNet-Version: 4.0.30319 X-Powered-By: ASP.NET Connection: close Date: Sat, 22 Mar 2014 22:10:03 GMT Content-Length: 29298 Cache-Control: private X-WUA-SERVER: WUA-I2 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head><meta http-equiv="x-ua-compatible" content="ie=edge,chrome=1" /><meta httpequiv="content-type" content="text/html; charset=utf-8" /><title> Universidade de Aveiro Página inicial </title><script type="text/javascript" src="http://static.web.ua.pt/js/jquery/jquery- 1.10.2.min.js"></script><script type="text/javascript" src="http://static.web.ua.pt/js/uacookies/1/cookies.pt.min.js"></script><link href="images/ua.ico" rel="shortcut icon" /><link href="/css/menus.min.css" type="text/css" rel="stylesheet" /><link href="/css/stylesheet.min.css" type="text/css" rel="stylesheet" /><link id="ctl00_dinstyle" href="/css/dinstyle.aspx?css=dinstyle.css%26svr=uasite" type="text/css" rel="stylesheet" />

Principais métodos HTTP GET permite aceder a qualquer informação identificada pelo Request-URI POST utilizado para enviar informação para o servidor HEAD idêntico ao GET mas o servidor não deverá enviar o conteúdo do recurso pedido (serve para desencadear atualizações no servidor)

Códigos de Status e Erro 1xx Informacional resposta intermédia que indica que o servidor ainda não acabou de processar o pedido 2xx Bem sucedido 200 OK 3xx Redireccionamento do cliente para outra localização 301-permanent, 302-temporary 4xx Erro provocado pelo Cliente 400-bad request, 403-forbidden, 404-not found 5xx Erro do Servidor 500 Internal Server Error, 503-Service Unavailable,504-Gateway Timeout

Web App/Service A criação de sites dinâmicos que se adaptam ao cliente podem ser alcançados: Manipulação local usando JS do DOM Servidor serve conteúdos criados em função dos pedidos do cliente

CGI Common Gateway Interface Web Browser HTTP Server Aplicação Externa O Servidor HTTP recorre a uma aplicação externa para criar os conteúdos a servir ao Cliente Não é um protocolo O programa externo pode ser escrito em qualquer linguagem

Problemas associados ao uso de CGI s Performance e Segurança Cada pedido feito ao Servidor despoleta um novo processo que executa o programa externo Processo do CGI é terminado quando o programa acaba de executar pelo que não há manutenção de estado de uma execução para outra

Application Servers Existem duas principais alternativas ao uso de CGI s Aplicação integrada com o servidor HTTP nexemplos: PHP Servidor HTTP comunica por IPC com uma aplicação externa nexemplos: ruby, Python (WSGI)

WSGI Web Service Gateway Interface Interface entre servidores web e aplicações Para Python! Interface de baixo nível que permite a uma aplicação Python receber o Environment e responder com conteúdos do recurso.

CherryPy Framework Web Minimalista (Python) Permite um desenvolvimento isolado Sem recorrer a um servidor Web Tão simples como: import cherrypy class HelloWorld(object): def index(self): return "Hello World!" index.exposed = True cherrypy.quickstart(helloworld())

Web Forms Web Form permite recolher informação no cliente a enviar para o servidor Pode conter diversos elementos gráficos tais como: text fields, checkboxes, radio-buttons, submit buttons, select lists, textarea

Web Forms (2) Todos elementos devem estar delimitados por um único <form></form> Atributo essencial: action que deve conter o URL do recurso no servidor web que irá processar os dados enviados Elemento essencial: n<input type="submit" value= Enviar >

Aplicação Web O servidor recebe os dados vindos do cliente e processa os mesmos. Pode gerar: Página Web com conteúdos personalizados Documento JSON nque pode ser processado no Web Browser Documento XML nque pode ser processado por outra aplicação (caso normal de um Web Service)

Referências https://www.ietf.org/rfc/rfc2616.txt http://docs.cherrypy.org/en/latest/