Design Coerente: decisões de tecnologia para APIs
|
|
- Júlio César Castilho Carvalho
- 5 Há anos
- Visualizações:
Transcrição
1 Design Coerente: decisões de tecnologia para APIs
2 GET /whoami Ravan Scafi Back-end Developer na Leroy Merlin Brasil Co-organizador do Meetup do Laravel SP Evangelista do
3 API? O que é uma API?
4 Interface é um elemento que proporciona uma ligação física ou lógica entre dois sistemas ou partes de um sistema que não poderiam ser conectados diretamente.
5 Parte 1 Recursos vs Operações
6 Quando Pensamos em APIs...
7 REST REpresentational State Transfer
8 REST Baseado em Endpoints GET /api/users/rscafi HTTP/1.1 Host: meusite.dev
9 REST Separado por Recursos (Substantivos) GET /api/users/rscafi HTTP/1.1 Host: meusite.dev
10 REST Verbos HTTP indicam a ação GET /api/users/rscafi HTTP/1.1 Host: meusite.dev
11 REST Relação Cliente-Servidor
12 REST Segue convenções HTTP
13 REST Controle por Hypermedia (HATEOAS - RMM)
14 GET /api/users/rscafi HTTP/1.1 Host: meusite.dev
15 { } "id": "rscafi", "name": "Ravan Scafi", "website": " "_links": { "self": { "href": " }, "hobbies": { "href": " }, }
16 REST Endpoints cacheáveis
17 REST Uniforme
18 REST Feito para durar décadas
19 REST Problemas (Spoiler: Parte 1!)
20 REST - Problemas Recomendações nem sempre são seguidas
21 REST - Problemas Excesso de Roundtrips dependendo da operação
22 REST - Problemas Nem sempre os Verbos HTTP disponíveis falam com clareza
23 Exemplo - Slack Um usuário pode ser kickado, banido ou pode deixar um canal
24 Exemplo - Slack DELETE /users/rscafi HTTP/1.1 Host: api.slack.com
25 Exemplo - Slack DELETE /users/rscafi HTTP/1.1 Host: api.slack.com Content-Type: application/json { status : kicked }
26 Exemplo - Slack DELETE /users/rscafi HTTP/1.1 Host: api.slack.com Content-Type: application/json { status : kicked, kick_channel : random }
27 Exemplo - Slack DELETE /channels/random/users/rscafi HTTP/1.1 Host: api.slack.com
28 Exemplo - Slack DELETE /channels/random/users/rscafi HTTP/1.1 Host: api.slack.com Content-Type: application/json { status : kicked }
29 REST - Problemas Operações BULK fogem do Padrão
30 O que fazer??
31 RPC Remote Procedure Call!
32 RPC Baseado em Endpoints POST /api/getuser HTTP/1.1 Host: meusite.dev Content-Type: application/json { id : rscafi }
33 RPC Similar à chamada de funções POST /api/getuser HTTP/1.1 Host: meusite.dev Content-Type: application/json { id : rscafi }
34 Equivalência // definição function getuser (id) { // } // chamada getuser('rscafi');
35 RPC Popularizado pelo SOAP (Simple Object Access Protocol)
36 SOAP - Exemplo <?xml version="1.0" encoding="utf-8"?> <soapenv:envelope xmlns:soapenv=" xmlns:xsd=" xmlns:xsi=" <soapenv:header> <ns1:requestheader soapenv:actor=" soapenv:mustunderstand="0" xmlns:ns1=" <ns1:networkcode>123456</ns1:networkcode> <ns1:applicationname>dfpapi-java dfp_test</ns1:applicationname> </ns1:requestheader> </soapenv:header> <soapenv:body> <getadunitsbystatement xmlns=" <filterstatement> <query>where parentid IS NULL LIMIT 500</query> </filterstatement> </getadunitsbystatement> </soapenv:body> </soapenv:envelope>
37 RPC Porém o SOAP perdeu espaço para as APIs REST
38 REST - Exemplo GET /ads?parentid=null&limit=500 HTTP/1.1 HOST: api.example.com
39 RPC Mas não existe somente o SOAP!
40 RPC baseado em JSON - Exemplo POST /getadunitsbystatement HTTP/1.1 HOST: api.example.com Content-Type: application/json {"filter": "WHERE parentid IS NULL LIMIT 500"}
41 RPC Foco em Operações
42 Exemplo - Slack POST /api/channels.kick HTTP/1.1 Host: slack.com Content-Type: application/json { "token": "xxxx-xxxxxxxxx-xxxx", "channel": "random", "user": "rscafi" }
43 RPC Relação entre (Micro) Serviços
44 RPC A partir de uma Definição de serviços, código é gerado
45 RPC Complexidade Abstraída
46 Google de chamadas RPC POR SEGUNDO!
47 grpc Framework universal, open source e performático
48 grpc HTTP/2
49 grpc Protocol Buffers
50 grpc Linguagem de Definição de Serviços
51 grpc service Greeter { rpc SayHello (HelloRequest) returns (HelloReply) {} } message HelloRequest { string name = 1; } message HelloReply { string message = 1; }
52 grpc Gera código para as maiores linguagens
53 grpc protoc --proto_path=examples/protos \ --php_out=examples/php \ --grpc_out=examples/php \ --plugin=protoc-gen-grpc=bins/opt/grpc_php_plugin \./examples/protos/helloworld.proto
54 grpc Cria stubs de Classes, onde os métodos correspondem a uma rota RPC
55 grpc $request = new Helloworld\HelloRequest(); $request->setname($name); list($reply, $status) = $client->sayhello($request)->wait(); $message = $reply->getmessage();
56 RPC Problemas
57 RPC - Problemas Abstrai complexidade (!)
58 RPC - Problemas Pode complicar mais do que se não estivesse presente
59 REST vs RPC Foco Complexidade Comunicação REST Recursos Exposta Sistemas RPC Operações Abstraída Serviços
60 Parte 2 Clientes
61 Quem vai consumir esses dados?
62 API
63 API
64 API
65 Como evitar isso?
66 BFF Backend For Frontend
67 BFF Abordagem criada pelo SoundCloud
68 BFF Clientes da API eram muito diferentes entre si
69 Clientes do SoundCloud Mobile Web Parceiros
70 BFF Cada equipe mantém uma API para atender às suas necessidades
71 BFF Menos burocracia para evoluir as APIs
72 SoundCloud BFFs Mobile API API Monstro Web API
73 BFF Problemas
74 BFF - Problemas APIs fragmentadas e em linguagens diferentes
75 BFF - Problemas Código duplicado!
76 BFF - Problemas Maior complexidade por cliente
77 Mas e o REST? Então é ele o problema?
78 Netflix API Gateway ios API API Geral Android API Web API (existe o Zuul na frente, mas isso é tema pra outra talk)
79 Até funciona, mas...
80 REST Problemas Parte 2
81 REST - Problemas Includes vs Endpoints em recursos relacionados
82 REST - Problemas Overfetching / Underfetching
83 REST - Problemas HATEOAS não diz nada sobre formato de Requisições e Respostas
84 REST - Problemas Não possui uma Especificação formal
85 REST - Problemas API pode rapidamente ficar gigantesca para atender a todos os clientes
86 REST - Problemas É difícil evoluir os dados sem saber o que os clientes de fato consomem
87 REST - Problemas Quanto mais complexa a API fica, menos eficaz é o Cache
88 GraphQL Graph Query Language
89 GraphQL Queries + Mutations + Documentação
90 GraphQL Única rota servindo de tunel para as queries
91 GraphQL POST /graphql HTTP/1.1 Host: meusite.dev Content-Type: application/graphql { } users { } name
92 GraphQL Dados da API são descritos
93 GraphQL type User { name: String website: String hobbies: [Hobby] }
94 GraphQL Um Request pede por dados específicos
95 { } user(name: "Ravan Scafi") { website, hobbies { name } }
96 GraphQL O retorno é exatamente o que foi requisitado
97 { } "user": { "website": " "hobbies": [ {"name": "PHP"}, {"name": "Viajar"} ] }
98 GraphiQL
99 GraphQL Mutations enviam dados para o servidor
100 GraphQL Especificação completa e documentada
101 GraphQL Dados podem evoluir com (maior) facilidade
102 GraphQL Problemas (achou que tinha bala de prata?)
103 GraphQL - Problemas Técnicas de cache são difíceis
104 GraphQL - Problemas Implementação pode ser complexa
105 GraphQL - Problemas Próprias (e novas) convenções
106 GraphQL - Problemas Upload de arquivos é hacky
107 GraphQL - Problemas Sem suporte* a HyperMedia
108 REST vs GraphQL Foco Implementação Clientes Cache REST Resiliência Evolutiva Parecidos Robusto GraphQL Performance Deve atender a especificação Diferentes Difícil
109 Conclusões
110 RPC Atende bem entre serviços e quando o foco é em operações.
111 GraphQL Garante performance de Clientes e permite evolução mais rápida.
112 REST Atende bem em CRUDs e onde as convenções HTTP possam ser aplicadas.
113 REST Se bem estruturado e a banda não é um problema, pode ser o mais robusto dos três
114 Dicas de Ouro
115 Você pode usar mais de uma solução!
116 (mas Por favor, não na mesma API)
117 Versionamento é sempre difícil
118 Não existe bala de prata.
119 Entenda seus dados e seus Usuários/Clientes
120 Empatia é a chave
121 Empatia é a capacidade de se identificar com outra pessoa, de sentir o que ela sente, de querer o que ela quer, de apreender do modo como ela apreende etc.
122
123 Estamos Contratando! Devs BackEnd, Devs FrontEnd, UXs
124 Agradecimentos Agradecimentos especiais a todos do SlidesCarnival que fizeram e disponibilizaram o template da apresentação gratuitamente.
STD29006 Sistemas Distribuídos
STD29006 Sistemas Distribuídos Serviços Web Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/std 22 de setembro
Leia maisDesenvolvimento de Aplicações Distribuídas
Web Services RESTful Pontifícia Universidade Católica de Minas Gerais Instituto de Ciências Exatas e Informática DAD (2019/01) Tópicos Apresentação da disciplina Introdução Desafios e características Arquitetura
Leia maisDesenvolvimento Web II
Desenvolvimento Web II Web Service PHP Rest Frameworks: Slim e Laravel (get/ post / put / delete) Gil Eduardo de Andrade Web Service Introdução: Um web service pode ser definido como uma tecnologia que
Leia maisInstrutor: Eder Martins Franco
Minicurso de REST Aula 1 fsdfsdf Introdução às RESTful APIs com PHP Instrutor: Eder Martins Franco 27 MAI 2017 Faculdade FUCAPI v1.0 Professor who? Programador e professor, notívago e viciado em café.
Leia maisDesenvolvimento de Aplicações Distribuídas
SOA e Web Services Pontifícia Universidade Católica de Minas Gerais Instituto de Ciências Exatas e Informática DAD (2019/01) Tópicos Apresentação da disciplina Introdução Desafios e características Arquitetura
Leia maisOrquestração de microservices com REST na Americanas.com
Orquestração de microservices com REST na Americanas.com Americanas.com Submarino.com Shoptime.com Soubarato.com Jeferson Leão Manutenção Escalabilidade Microservices Inovação O que acontece com a informação?
Leia maisWebservices LEANDRO MENDES FERREIRA
Webservices LEANDRO MENDES FERREIRA Webservices - Agenda CONCEITOS RPC HTTP SOAP RESTFUL CONCEITOS Conceitos Básicos XML (extensible Markup Language) Liguagem de marcação para descrição de documentos de
Leia maisSistemas distribuídos. Prof. Emiliano Monteiro
Sistemas distribuídos Prof. Emiliano Monteiro Serviços web (web services) Nos serviços web um cliente específico de uma determinada aplicação interage pela Internet com um serviço que possui uma interface
Leia maisAPI. Lista de métodos da API do Funil de Vendas. Criação de Atividade. POST /v2/activities. Authorization: Basic { ACTIVITY } Exemplo:
API Lista de métodos da API do Funil de Vendas Criação de Atividade POST /v2/activities Content-Type: application/json ACTIVITY Exemplo: POST /api/v2/activities HTTP/1.1 Host: sandbox.funildevendas.com.br
Leia mais>>> RESTful API >>> Com Node.js e Restify. Name: Anderson Pimentel Date: 19 de Março de
>>> RESTful API >>> Com Node.js e Restify Name: Anderson Pimentel Date: 19 de Março de 2018 apds.anderson@icomp.ufam.edu.br [~]$ _ [1/31] >>> Agenda 1. Introdução 2. Boas Práticas 3. Hands-on Ambiente
Leia maisAPI SEBRAE MÉTODOS PARA INTEGRAÇÃO COM A PLATAFORMA Versão 1.0 Brasília 2017
API SEBRAE MÉTODOS PARA INTEGRAÇÃO COM A PLATAFORMA Versão 1.0 Brasília 2017 Manual API SEBRAE HISTÓRICO DE VERSÕES Data Versão Descrição Autor 17/01/2017 1.0 Criação Cast Group Sumário 1 INTRODUÇÃO...5
Leia maisWeb Services REST. Sistemas Distribuídos. Mauro Lopes Carvalho Silva. Professor EBTT DAI Departamento de Informática Campus Monte Castelo
Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Objetivos Nesta aula
Leia mais10 atributos de uma API de sucesso
10 atributos de uma API de sucesso Do design RESTful e segurança, a formas de divulgação e engajamento Kleber Bacili kleber.bacili@sensedia.com @kleberbacili slideshare.net/kleberbacili Cerquilho Kleber
Leia maisRedes de Computadores e Aplicações Camada de aplicação IGOR ALVES
Redes de Computadores e Aplicações Camada de aplicação IGOR ALVES Camada de aplicação Um protocolo da camada de aplicação define como processos de uma aplicação, que funcionam em sistemas finais diferentes,
Leia maisColetando dados utilizando a API do Zabbix com PHP e JSON
Coletando dados utilizando a API do Zabbix com PHP e JSON INTRODUÇÃO: O Zabbix possui uma limitação quanto à montagem de painéis a serem utilizados por pessoas que não estão acostumadas a utilizar a sua
Leia maisSERVIÇO CONTRATO Especificação das operações de Serviço
SERVIÇO Especificação das operações de Serviço 1.0 01/07/2014 1 de 8 Histórico de Revisões Data Versão Descrição Elaboração Inicial da especificação da operação de serviço 17/06/2014 0.1 ImportarArquivoContratoCCEAL.
Leia maisManual de Integração. Tecnologia: WebServices SOAP XML. Área: CDC. Produto: CDC Simplificada (Juridica) Versão: 1.0. Autor: Angelo Bestetti Junior
Manual de Integração Tecnologia: WebServices SOAP XML Área: CDC Produto: CDC Simplificada (Juridica) Versão: 1.0 Autor: Angelo Bestetti Junior Conteúdo Introdução... 3 Considerações Iniciais... 4 Privacidade...
Leia maisWeb Services. Professor: Ricardo Luis dos Santos IFSUL Campus Sapucaia do Sul
Web Services Professor: Ricardo Luis dos Santos IFSUL 2015 Rápida revisão da última aula 3 Rápida revisão da última aula 1 Listar o filme com o id 475 2 Listar todos os filmes com o título que inicia com
Leia maisEA975 - Laboratório de Engenharia de Software
EA975 - Laboratório de Engenharia de Software Turmas K/L - 2017 Aula 1 O que vamos desenvolver? Vamos desenvolver uma aplicação distribuída, empregando a arquitetura 3-Tier segundo o estilo REST/HTTP (Respresentational
Leia maisPrincipais conceitos de CORBA
Principais conceitos de CORBA Tecgraf PUC-Rio fevereiro de 2011 Common Object Request Broker Architecture Uma arquitetura aberta para o desenvolvimento de aplicações distribuídas em um ambiente multilinguagem
Leia maisUniversidade Federal Fluminense Mestrado em Sistemas de Telecomunicações. Disciplina: Fundamentos de Sistemas Multimídia.
Universidade Federal Fluminense Mestrado em Sistemas de Telecomunicações Disciplina: Fundamentos de Sistemas Multimídia Web Services Aluno: Leonardo Severo Alves de Melo leonardo.severo@ig.com.br Introdução
Leia maisRedes de Computadores
Redes de Computadores Camada de Aplicação HTTP FTP SMTP Slide 1 Mensagem de Requisição HTTP linha de pedido (comandos GET, POST,HEAD ) linhas de cabeçalho Carriage return, line feed indica fim da mensagem
Leia maisDesenvolvimento Web. Introdução Geral. Prof. Vicente Paulo de Camargo
Introdução Geral Prof. Vicente Paulo de Camargo Web e Internet A Internet é uma rede de computadores que conecta milhões de computadores Se comunicam através do protocolos específicos A Web é uma forma
Leia maisRedes de Computadores
Prof. Universidade Federal de Mato Grosso do Sul brivaldo@facom.ufms.br 18 de maio de 2017 Visão Geral 1 Visão Geral 2 3 4 Web e o HTTP Relembrando rapidamente, página web é construída com objetos um objeto
Leia maisRicardo R. Lecheta. Novatec
Ricardo R. Lecheta Novatec Sumário Agradecimentos...11 Sobre o autor...12 Prefácio...13 Capítulo 1 Introdução...14 1.1 Introdução ao Node.js... 14 1.2 A linguagem JavaScript... 14 1.3 Arquitetura não
Leia maisConceitos de Ajax Exemplos de uso do Ajax no braço, muitos exemplos, muito código (HTML, CSS, JavaScript, PHP, XML, JSON)
Márcio Koch 1 Currículo Formado na FURB em Ciência da Computação Pós graduado em Tecnologias para o desenvolvimento de aplicações web Mestrando em Computação Gráfica na UDESC Arquiteto de software na Senior
Leia maisEA975 - Laboratório de Engenharia de Software
EA975 - Laboratório de Engenharia de Software Turmas K/L - 2017 Aula 8 Vamos inicialmente especificar com mais detalhes o termo "recurso" utilizado no estilo arquitetural REST. Em REST, recursos são uma
Leia maisWeb services. Um web service é qualquer software que está disponível através da Internet através de uma interface XML.
Web services Um web service é qualquer software que está disponível através da Internet através de uma interface XML. XML é utilizado para codificar toda a comunicação de/para um web service. Web services
Leia maisInformática Parte 26 Prof. Márcio Hunecke
Escriturário Informática Parte 26 Prof. Márcio Hunecke Informática REST A Representational State Transfer (REST), em português Transferência de Estado Representacional, é um estilo de arquitetura que
Leia maisWeb Services. Tópicos. Introdução (1/3) CONTEXTO HISTÓRICO WEB SERVICES Conclusões
Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Programa de Pós-Graduação em Ciência da Computação Web Services Conceitual Juliano Moraes, Marcus Breda, Paulo Gil, Rafael
Leia maisRicardo Couto Antunes da Rocha 2005 Ricardo Couto Antunes da Rocha
Programação com Sockets Ricardo Couto Antunes da Rocha rcarocha@inf.ufg.br 2005 Ricardo Couto Antunes da Rocha Parâmetros de protocolos Objetivo do protocolo Protocolo de transporte: TCP ou UDP Porta (servidora!):
Leia maisREST RESTfulWeb Services JAX-RS
Web Services REST Web Service Serviço oferecido por um sistema que pode ser acessado diretamente por outro sistema desenvolvido em qualquer tecnologia através de uma rede como a internet. Cada plataforma
Leia maisAula 4 Arquitetura de software na Web atual: AJAX e Ajax. Prof: Dra. Renata Pontin de Mattos Fortes
SCE 0265 ICMC-USP Aula 4 Arquitetura de software na Web atual: AJAX e Ajax Prof: Dra. Renata Pontin de Mattos Fortes Aluno PAE: Willian Massami Watanabe 1 Introdução O que é AJAX? 2 Introdução O que é
Leia maisPython para web com Flask. #PythonAmazonas
Python para web com Flask #PythonAmazonas @marcosptf Be Free. KDE About me @marcosptf pytero -> Grupy-SP phpzero -> PHPSP javero -> NetCat 2/48 Be Free. KDE Flask? O que é Flask? Flask é um microframework
Leia maisSRSAT Sistema de Registro de Modelos Equipamentos SAT Ambiente de Testes
GOVERNO DO ESTADO DE SÃO PAULO SECRETARIA DA FAZENDA COORDENADORIA DA ADMINISTRAÇÃO TRIBUTÁRIA DIRETORIA DE INFORMAÇÕES SRSAT Sistema de Registro de Modelos Equipamentos SAT Ambiente de Testes Webservice
Leia maisGlobalcode Open4education. Trilha Ruby. Sergio Lima Ruby Developer
Trilha Ruby Sergio Lima Ruby Developer Uma App Ruby On Rails Integrada com GraphQL A Linguagem do Facebook para APIs por SERGIO LIMA RUBY DEVELOPER Systems Analyst / Developer /sergiosouzalima #rubydev.rb
Leia maisInvocação Remota. Prof. Leonardo Barreto Campos. 1/29
Invocação Remota Prof. Leonardo Barreto Campos 1/29 Sumário Introdução Chamada de Procedimento Remoto Invocação a Método Remoto Leitura Complementar Bibliografia 2/29 Introdução Essa aula trata como os
Leia maisTransferência de Arquivo: Protocolo FTP
Para iniciar uma sessão FTP (File Transfer Protocol) típica e acessar uma conta, o usuário deve fornecer uma identificação e uma senha; Após a identificação o usuário pode realizar operações de transferência
Leia maisCriando e consumindo Web service REST com PHP e JSON. Palestrante: Weiberlan Garcia
Criando e consumindo Web service REST com PHP e JSON Palestrante: Weiberlan Garcia Weiberlan Garcia Consultor de Software Livre, trabalha na empresa Ambiente Livre Tecnologia. Desempenha funções de análise,
Leia maisUso da Internet. Disciplina: Gestão da Tecnologia de Sistemas. Professor: Thiago Silva Prates
Uso da Internet Disciplina: Gestão da Tecnologia de Sistemas Professor: Thiago Silva Prates Uso da Internet nos negócios Com a evolução dos Sistemas de Informações nas organizações, da melhoria na infraestrutura,
Leia maisAPI SEBRAE. Versão 1.2
API SEBRAE Versão 1.2 Brasília 2016 Manual API SEBRAE HISTÓRICO DE VERSÕES Data Versão Descrição Autor 20/04/2015 1.0 Criação Via Appia Informática 08/07/2015 1.1 Melhorias Via Appia Informática 10/12/2016
Leia maisINTRODUÇÃO. RPC x RMI
1 INTRODUÇÃO RPC x RMI 2 INTRODUÇÃO RPC Remote procedure call Este termo é utilizado para aplicativos clientes que fazem normalmente chamadas a procedimentos remotos que estão em outro processo e hosts.
Leia maisAPI Documentation. Release Igor Morse
API Documentation Release 1.0.0 Igor Morse fev 10, 2019 Getting Started: 1 O que é a API do Automação-IOT? 3 1.1 Guia Básico............................................... 3 1.2 FAQ....................................................
Leia maisManual Direct100 API V2 RICCARDO BARANA
Manual Direct100 API V2 RICCARDO BARANA AVISO A versão com o URL-base https://direct100.inesting.com/... da API será descontinuada no dia 27 de março de 2019. Recomendamos aos novos clientes que utilizem
Leia maisAPI icontrato. Versão 1.0. Para ajuda e informações, abra um chamado pelo
API icontrato Versão 1.0 Criamos essa API para integrar qualquer sistema com o icontrato. A comunicação do sistema do cliente para o icontrato terá um Header nomeado x-token para servir de autenticação,
Leia maisDicas & truques é uma iniciativa InnoDev com o foco na divulgação e promoção do Talento Angolano e fundamentalmente a partilha do conhecimento com
Dicas & truques é uma iniciativa InnoDev com o foco na divulgação e promoção do Talento Angolano e fundamentalmente a partilha do conhecimento com estudantes, profissionais e aos amantes da leitura. Ainda
Leia maisGraphQL. o que, como e quando. QCon SP 2018
GraphQL o que, como e quando QCon SP 2018 Introdução pessoal Problemas de APIs REST Soluções GraphQL Caso: GitHub Caso: Cartão Elo Agenda - Desenvolvedor desde os 9 anos - Web desde 1998 (Perl, CGI ) -
Leia maisAdemir C. Gabardo. Novatec
Ademir C. Gabardo Novatec Copyright 2017 da Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer
Leia maisArquitetura da World Wide Web. WWW: Histórico. WWW: Usos. WWW: Histórico. WWW Tecnologias Fundamentais. Comércio Eletrônico na WWW
Arquitetura da World Wide Web World Wide Web Sistema de informação em escala global acessível em tempo real através de redes de computadores como a Internet. Comércio Eletrônico na WWW Wagner Meira Jr.,
Leia maisWeb Services REST JAX-RS
Web Services REST JAX-RS Professor: Ricardo Luis dos Santos IFSUL 2015 Agenda Principais tecnologias envolvidas Testando os serviços desenvolvidos JAX-RS Principais anotações JAX-RS Principais anotações
Leia maisCOMPARANDO APLICAÇÃO WEB SERVICE REST E SOAP
COMPARANDO APLICAÇÃO WEB SERVICE REST E SOAP Cleber de F. Ferreira¹, Roberto Dias Mota¹. ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil cleberferreirasi@hotmail.com, motaroberto@hotmail.com Resumo.
Leia maisRaspando dados. O maravilhoso mundo da multidão de informações. pedro belasco - cromatica - cdc W3C - Open Data
Raspando dados O maravilhoso mundo da multidão de informações pedro belasco - cromatica - cdc 2010 - W3C - Open Data 1 Parte 1, Mas, afinal, que diabos é uma página? Arquitetura da Internet, como computadores
Leia maisEstruturas de Comunicação de Dados Aula 3 Camadas de Aplicação e Transporte
Estruturas de Comunicação de Dados Aula 3 Camadas de Aplicação e Transporte Escola Maria Eduarda Ramos de Barros Curso técnico em redes de computadores Carpina - PE Roteiro Aplicações de Rede Transporte
Leia maisDesenvolvimento Web. [Versão 5 Maio/2019] Professor Emiliano S. Monteiro
Desenvolvimento Web [Versão 5 Maio/2019] Professor Emiliano S. Monteiro API REST (PHP) Professor Emiliano S. Monteiro API REST Significa Representation State Transfer. É um estilo de desenvolvimento ou
Leia maisMinicurso Web Services com PHP
Minicurso Vinícius Costa de Souza viniciuscs@unisinos.br http://www.inf.unisinos.br/~vinicius julho de 2005 Apresentações Nome Conhecimentos sobre Web Services Conhecimentos sobre PHP Expectativas referentes
Leia maisREST. Representational State Transfer. É um estilo arquitetural usado por muitas aplicações Web para estender as suas funcionalidades.
REST Representational State Transfer É um estilo arquitetural usado por muitas aplicações Web para estender as suas funcionalidades. Não é um padrão. Exemplo ASP.NET Web API namespace WebAPIApp.Models
Leia maisRedes de Computadores
Redes de Computadores HTTP Prof. Thiago Dutra Agenda Definição de HTTP Hipertexto Características do HTTP O HTTP e a Web Conexões HTTP Mensagens HTTP Cookies Caches Web GET Condicional
Leia maisRedes de Computadores I. Sockets e Arquitetura HTTP
v.2016 Redes de Computadores I Sockets e Arquitetura HTTP Prof. Ricardo Couto A. da Rocha rcarocha@ufg.br UFG Regional Catalão HTTP - O Servidor Web Prof. Dr. Ricardo Couto Antunes da Rocha - Depto. de
Leia maisAPI - Webservices. Grupo Cortez de Lima
API - Webservices Grupo Cortez de Lima Introdução A API Web Services Cortez de Lima foi desenvolvida para facilitar a integração de outros sistemas ao nosso sistema próprio de Publicações Eletrônicas através
Leia maisRedes de Computadores
Redes de Computadores Camada de Aplicação Slide 1 Protocolo da Camada de Aplicação Tipos de mensagens trocadas; A sintaxe dos vários tipos de mensagens; A semântica dos campos; Regras para determinar quando
Leia maisPROTÓTIPO DE UM SISTEMA DE IMPORTAÇÃO PARA UMA AGÊNCIA DE TRANSPORTES INTERNACIONAIS
Universidade Regional de Blumenau Centro de Ciências Exatas e Naturais Bacharelado em Ciências da Computação Estágio supervisionado de Conclusão de Curso PROTÓTIPO DE UM SISTEMA DE IMPORTAÇÃO PARA UMA
Leia maisPROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza
PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO Introdução App de exemplo Implementação do exemplo Testes realizados
Leia maisWeb Services. Integração de aplicações na Web. Sistemas Distribuídos
Web Services Integração de aplicações na Web Integração de Aplicações na Web Interoperação entre ambientes heterogêneos desafios diversidade de componentes: EJB, CORBA, DCOM... diversidade de linguagens:
Leia maiscom Repositórios Abertos
Integração do Moodle com Repositórios Abertos Liane Tarouco Marcelo Schmitt PGIE/CINTED Univ. Federal Rio Grande do Sul Brasil LACLO 2010 Autoria de conteúdo educacional Crescimento de educação a distância
Leia maisAPI SEBRAE MÉTODOS PARA INTEGRAÇÃO COM A BIS. Versão 1.0
API SEBRAE MÉTODOS PARA INTEGRAÇÃO COM A BIS Versão 1.0 Brasília 2016 Manual API SEBRAE HISTÓRICO DE VERSÕES Data Versão Descrição Autor 11/07/2016 1.0 Criação Via Appia Informática SUMÁRIO 1 INTRODUÇÃO...
Leia maisGUIA API BTB /04/2019 INFORMAÇÃO PÚBLICA
05/04/019 SUMÁRIO 1 HISTÓRICO DE VERSÕES... 4 INTRODUÇÃO... 5 3 VISÃO GERAL... 5 3.1 Verbos HTTP API - BTB... 5 3. Uso do POST... 6 3.3 Uso do GET... 7 3.4 Endpo... 7 3.5 Restrições... 7 4 ENDEREÇOS DA
Leia maisL A C Laboratory for Advanced Collaboration
Publicação de Dados Governamentais no Padrão Linked Data 3.1 Fundamentos de SPARQL Karin Breitman José Viterbo Edgard Marx Percy Salas L A C Laboratory for Advanced Collaboration Objetivo deste módulo
Leia maisIntegração REST Text2Speech Versão 1.1
1 Integração REST Text2Speech Versão 1.1 2 Índice de Conteúdos Introdução Page. 3 Plataforma Técnica Petição envíos de mensagens de voz Page. 4 Petição JSON Page. 4 Exemplo solicitação CURL Page. 5 Exemplo
Leia maisAPI olx.com.br. Utilizando o protocolo OAuth 2.0
API olx.com.br Utilizando o protocolo OAuth 2.0 Resumo Este documento descreve como utilizar o protocolo oauth 2.0 como forma de autenticação na API olx.com.br através de uma aplicação web. OAuth 2.0 é
Leia maisManual de Integração do icarta
Manual de Integração do icarta Versão 1.00 Abril 2014 Controle de Versões Versão Data 1.00 16/04/2014 1. Introdução Este documento tem por objetivo a definição das especificações e critérios técnicos necessários
Leia maisWeb Services REST e JSON
Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Objetivos Nesta aula
Leia maisComunicação. capítulo
Comunicação capítulo 4 Camadas de protocolos: Modelo OSI Camadas de protocolos: Mensagem Protocolos de baixo nível Estas camadas implementam as funções básicas que envolvem uma rede de computadores: Física:
Leia maisJava para WEB com Struts 2 e Hibernate
Java para WEB com Struts 2 e Hibernate Aula 01 http://fernandoanselmo.orgfree.com fernando.anselmo74@gmail.com Apresentação Fernando Anselmo fernando.anselmo74@gmail.com 25 anos na área de Desenvolvimento
Leia maisALUNO: RONI FABIO BANASZEWSKI
Model-View-Controller ALUNO: RONI FABIO BANASZEWSKI Objetivo Separar dados ou lógica de negócios (Model) da interface do usuário (View) e do fluxo da aplicação (Control) A idéia é permitir que uma mesma
Leia maisArquitetura de sistemas distribuídos
Arquitetura de sistemas distribuídos 3. Comunicação nos Sistemas Distribuídos 3.1.Introdução aos modelos de comunicação 3.2 Modelo Cliente-Servidor 3.3.Comunicação através de Sockets 3.3 Chamada a procedimento
Leia maisConfigurando a Autenticação de Requisições HTTP com o CE Executando o ACNS e o Microsoft Active Directory
Configurando a Autenticação de Requisições HTTP com o CE Executando o ACNS 5.0.1 e o Microsoft Active Directory Índice Introdução Pré-requisitos Requisitos Componentes Utilizados Convenções Configurar
Leia mais1 INTRODUÇÃO CERTIFICADO DE SEGURANÇA SSL AUTENTICAÇÃO WEB METHOD: LOGIN WEB METHOD: LISTBONDCODES...
ÍNDICE 1 INTRODUÇÃO... 3 2 CERTIFICADO DE SEGURANÇA SSL... 3 3 AUTENTICAÇÃO... 4 4 WEB METHOD: LOGIN... 5 5 WEB METHOD: LISTBONDCODES... 6 6 WEB METHOD: LISTBONDCODESCSV... 6 7 WEB METHOD: LISTTITULOSPUBLICOS...
Leia maisINE Introdução a S is temas Multiagente Modelo de Referência FIPA
INE602200 Introdução a S is temas Multiagente Modelo de Referência FIPA Ricardo Azambuja Silveira INE-CTC-UFSC E-Mail: silveira@inf.ufsc.br URL: www.inf.ufsc.br/~silveira Importância de Padrões em SMA
Leia maisSistemas Distribuídos Arquiteturas Middlewares
Sistemas Distribuídos Arquiteturas s Arquitetura Arquitetura de um sistema é sua estrutura em termos dos componentes e seus relacionamentos Objetivo: garantir que a estrutura satisfará as demandas presentes
Leia maisDesenvolvimento de uma ferramenta para organização e gerenciamento de atividades de docentes
Universidade Federal de Uberlândia - UFU Faculdade de Computação Bacharelado em Sistemas de Informação Desenvolvimento de uma ferramenta para organização e gerenciamento de atividades de docentes Rafael
Leia maisProtocolo HTTP. - Características. - Modelo Requisição/Resposta. - Common Gateway Interface (CGI)
Protocolo HTTP - Características - Modelo Requisição/Resposta - Common Gateway Interface (CGI) Características Hypertext Transfer Protocol (HTTP) Protocolo utilizado para transferir documentos de hipertexto
Leia maisCentro Universitário Metodista Benne1 Rio de Janeiro, Dezembro de 2009. Rafael Polo e Sabrina Arêas
Centro Universitário Metodista Benne1 Rio de Janeiro, Dezembro de 2009 Rafael Polo e Sabrina Arêas Contexto 60 s - Primeiros sistemas de informação corporativos. 70 s Desenvolvimento e comercialização
Leia maisDirect100 API Manual de utilização da API Direct100
Direct100 API Manual de utilização da API Direct100 Manual de utilização da API Direct100 página 02 Índice Índice... 2 Introdução... 3 Envio de sms... 3 Resposta ao envio de sms... 4 Consulta de saldo...
Leia maisEvolução guiada por APIs. com REST para modernizar seu legado
Evolução guiada por APIs Option #2 híbrida Criando uma arquitetura com REST para modernizar seu legado Rodrigo Engenheiro de Software na CI&T. Atuou na criação da FIFA World Cup 2014 Happiness Flag da
Leia maisPROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza
PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS ARMAZENAMENTO EM BD NO DM Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO Introdução App de exemplo Implementação do exemplo Testes realizados
Leia maisSistemas Distribuídos
Chamada Remota de Procedimento março de 2019 RPC: motivação A B send (B, &pedido) receive (B, &resposta) como facilitar esse padrão tão comum? encapsulamento de detalhes de comunicação criação, envio e
Leia maisPrática da Disciplina de Sistemas Distribuídos Web Services REST IFMA DAI Professor Mauro Lopes C. Silva
1. O que é REST e RESTful? Prática da Disciplina de Sistemas Distribuídos Web Services REST IFMA DAI Professor Mauro Lopes C. Silva Nos últimos tempos, uma forte tendência vem mudando a forma de pensar
Leia maisProgramação para Web
Colégio Estadual João Manoel Mondrone Ensino Fundamental, Médio, Profissional e Norm Técnico em Informática Programação para Web Profª Ana Paula Mandelli anapaula_mandelli@hotmail.com O que é a COMUNICAÇÃO?
Leia maisManual de Integração Consulta Automática de NFS-e
Manual de Integração Consulta Automática de NFS-e Versão 2.1 Junho de 2014 1 Controle de Alterações Nome Data Thaís Oliveira 10/11/2013 Thaís Oliveira 03/01/2014 Thaís Oliveira 18/06/2014 Versão Observação
Leia maisSISTEMAS DISTRIBUÍDOS
SISTEMAS DISTRIBUÍDOS Aula 1 REST em Java JAX-RS (Jersey) Material de suporte às aulas de Sistemas Distribuídos Copyright DI FCT/ UNL / 1 REST : REPRESENTATIONAL STATE TRANSFER Padrão arquitetural para
Leia maisCapítulo 2. Camada de aplicação
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIADO RIO GRANDE DO NORTE IFRN Disciplina: Arquitetura de redes de computadores e Tecnologia de Implementação de Redes Professor: M. Sc. Rodrigo Ronner T.
Leia maisGuia de Integração Gateway de Pagamentos Redunicre. Versão 1.1
Guia de Integração Gateway de Pagamentos Redunicre Versão 1.1 Índice Introdução...4 Contactos...4 Integração com a aplicação do comerciante...5 Inicializar pagamento web... 7 Redirecionar para a página
Leia maisIntegração de sistemas utilizando Web Services do tipo REST
Integração de sistemas utilizando Web Services do tipo REST Jhonatan Wilson Aparecido Garbo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil jhowgarbo@gmail.com jaime@unipar.br
Leia maisCassio Greco. Fundador da Conta Simples
Cassio Greco Fundador da Conta Simples Porquê usar Go em serviços financeiros Agenda 1. Uma básica introdução sobre Go 2. Porquê e como usamos Go na Conta Simples 3. Resolvendo problemas complexos em Go
Leia maisArquitetura de aplicativos para Smart Devices
Arquitetura de aplicativos para Smart Devices O problema que vamos resolver será a construção de um backend para uma imobiliária. Ele deve ter uma parte web e outra para Smart Devices, para ser utilizada
Leia maisConstruindo Microservices Auto-curáveis com Spring Cloud e Netflix OSS. Rodrigo Cândido da
Construindo Microservices Auto-curáveis com Spring Cloud e Netflix OSS Rodrigo Cândido da Silva @rcandidosilva About Me Software Architect http://integritastech.com JUG Leader do GUJavaSC http://gujavasc.org
Leia mais