Skip to content

Commit e049412

Browse files
committed
Exemplo métodos http
1 parent 3c75303 commit e049412

9 files changed

+159
-29
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
apiKey.txt

acessandoApiCep.py

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
import requests
2+
r = requests.get(url='https://viacep.com.br/ws/63100020/json/')
3+
cep = r.json()
4+
print(cep)

acessandoApiFilmes.py

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import requests
2+
r = requests.get(url='http://www.omdbapi.com/?s=matrix&type=Movie&apikey={API key}')
3+
pesquisa = r.json()
4+
filmes = pesquisa["Search"]
5+
for filme in filmes:
6+
7+
if(filme["Title"]=="The Matrix Revolutions"):
8+
resultado1=filme["Year"]
9+
10+
if(filme["imdbID"]=="tt0133093"):
11+
resultado2 = filme["Title"]
12+
13+
print(resultado1, resultado2)

exemploDicionario.py

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
pessoa = {"id": 123, "nome": "Maria", "idade": 40}
2+
3+
print(pessoa["id"], pessoa["nome"], pessoa["idade"])

exemploMetodosHttp.py

+43
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
from flask import Flask, request
2+
from flask_restful import Resource, Api
3+
4+
app = Flask(__name__)
5+
api = Api(app)
6+
7+
numeros = [1,2,3]
8+
9+
class ExemploGet1(Resource):
10+
def get(self):
11+
return {"numeros":numeros}, 200
12+
13+
class ExemploGet2(Resource):
14+
def get(self, posicaoNumero):
15+
return {"numero":numeros[posicaoNumero]}, 200
16+
17+
class ExemploPost(Resource):
18+
def post(self):
19+
dados = request.json
20+
numeros.append(dados["numero"])
21+
return {"mensagem":"Número inserido"}, 201
22+
23+
class ExemploPut(Resource):
24+
def put(self):
25+
global numeros
26+
dados = request.json
27+
numeros = dados["novosNumeros"]
28+
print(numeros, dados)
29+
return {"mensagem":"Números atualizados"}
30+
31+
class ExemploDelete(Resource):
32+
def delete(self, posicaoNumero):
33+
del(numeros[posicaoNumero])
34+
return {"mensagem":"Número deletado"}
35+
36+
api.add_resource(ExemploGet1, '/')
37+
api.add_resource(ExemploGet2, '/numero/<int:posicaoNumero>')
38+
api.add_resource(ExemploPost, '/insere_numero')
39+
api.add_resource(ExemploPut, '/atualiza_numeros')
40+
api.add_resource(ExemploDelete, '/deleta_numero/<int:posicaoNumero>')
41+
42+
if __name__ == '__main__':
43+
app.run(debug=True)

exercicioCriarApi.py

+79
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
from flask import Flask, request
2+
from flask_restful import Resource, Api
3+
4+
app = Flask(__name__)
5+
api = Api(app)
6+
7+
pessoas = [
8+
{
9+
"id": 1,
10+
"nome": "Renan",
11+
"idade": 19,
12+
"genero": "M",
13+
"contato": "(88) 9 9999-9999"
14+
},
15+
{
16+
"id": 2,
17+
"nome": "Maria",
18+
"idade": 22,
19+
"genero": "F",
20+
"contato": "(88) 9 8888-8888"
21+
},
22+
{
23+
"id": 3,
24+
"nome": "João",
25+
"idade": 33,
26+
"genero": "M",
27+
"contato": "(88) 9 1111-1111"
28+
}
29+
]
30+
31+
class ListarPessoas(Resource):
32+
def get(self):
33+
return pessoas, 200
34+
35+
class PessoaPorId(Resource):
36+
def get(self, idPessoa):
37+
for pessoa in pessoas:
38+
if(pessoa["id"] == idPessoa):
39+
return pessoa, 200
40+
41+
return {"erro": "Usuário não encontrado"}, 404
42+
43+
class AdicionarPessoa(Resource):
44+
def post(self):
45+
dadosJson = request.json
46+
pessoas.append(dadosJson)
47+
48+
return {"message": "Usuário adicionado"}, 201
49+
50+
class AtualizarPessoa(Resource):
51+
def put(self, idPessoa):
52+
53+
for pessoa in pessoas:
54+
if pessoa["id"] == idPessoa:
55+
pessoa["nome"] = request.json["nome"]
56+
pessoa["idade"] = request.json["idade"]
57+
pessoa["genero"] = request.json["genero"]
58+
pessoa["contato"] = request.json["contato"]
59+
return {"message": "Dados atualizados"}, 201
60+
61+
return {"erro": "Usuário não encontrado"}, 404
62+
63+
class DeletarPessoa(Resource):
64+
def delete(self, idPessoa):
65+
for i in range(len(pessoas)):
66+
if pessoas[i]["id"] == idPessoa:
67+
del pessoas[i]
68+
return {"resposta": "Usuário deletado"}, 200
69+
70+
return {"erro": "Usuário não encontrado"}, 404
71+
72+
api.add_resource(ListarPessoas, "/")
73+
api.add_resource(PessoaPorId, "/pessoa/<int:idPessoa>")
74+
api.add_resource(AdicionarPessoa, "/adicionar_pessoa")
75+
api.add_resource(AtualizarPessoa, "/atualizar_pessoa/<int:idPessoa>")
76+
api.add_resource(DeletarPessoa, "/deletar/<int:idPessoa>")
77+
78+
if __name__ == '__main__':
79+
app.run(debug=True)

helloWorldFlaskRESTful.py

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
from flask import Flask
2+
from flask_restful import Resource, Api
3+
4+
app = Flask(__name__)
5+
api = Api(app)
6+
7+
class HelloWorld(Resource):
8+
def get(self):
9+
return {'hello': 'world'}
10+
11+
api.add_resource(HelloWorld, '/')
12+
13+
if __name__ == '__main__':
14+
app.run(debug=True)

pessoas.json

-27
This file was deleted.

pessoas.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,6 @@
2626
"nome": "Paula",
2727
"idade": 20,
2828
"genero": "F",
29-
"contato": "(88) 9 1238-8888"
30-
}
29+
"contato": "(88) 9 8888-8888"
30+
}
3131
]

0 commit comments

Comments
 (0)