Métodos HTTP Flask
Neste artigo, vamos explorar os diferentes métodos Flask HTTP e como usá-los em seus aplicativos da web com exemplos.
O protocolo HTTP forma a base da comunicação de dados na Internet e fornece vários métodos de obtenção de dados de um determinado URL.
Os métodos HTTP especificam o tipo de solicitação enviada ao servidor e são comumente usados, incluindo GET , POST , PUT , DELETE e HEAD .
Cada método atende a uma finalidade específica e pode ser utilizado para uma variedade de operações no servidor.
Métodos | Visão geral |
PEGAR | O método mais utilizado envolve o envio de dados para o servidor sem nenhuma criptografia |
CABEÇA | Semelhante ao método GET, exceto que não inclui um corpo de resposta. |
PUBLICAR | Este método é empregado para enviar dados de formulário HTML para o servidor e, ao contrário de outros métodos, os dados recebidos pelo método POST não são armazenados em cache pelo servidor. |
COLOCAR | Este método substitui todas as representações presentes do recurso designado pelo conteúdo que foi carregado. |
EXCLUIR | Este método elimina todas as representações presentes do recurso identificado por uma URL. |
Método GET
O método GET é usado para solicitar dados ao servidor.
Quando alguém envia uma solicitação GET, o servidor obtém os dados e os envia de volta para a pessoa que os solicitou.
O método GET é usado principalmente para obter informações de bancos de dados ou outros locais onde as informações são armazenadas.
No Flask, o método GET pode ser usado com o decorador @app.route.
Example:
Método POST
O método POST é usado para fornecer dados ao servidor.
Quando alguém envia uma solicitação POST, o servidor pega os dados e os processa.
O método POST geralmente é usado para adicionar novas informações a um banco de dados ou atualizar informações existentes.
No Flask, o método POST usa o atributo request.form.
Example:
Método PUT
O método PUT é usado para atualizar informações que já estão armazenadas no servidor.
Quando alguém envia uma solicitação PUT, o servidor pega os dados e altera as informações especificadas.
No Flask, o método PUT usa o atributo request.form.
Example:
Método DELETE
O método DELETE é usado para remover informações do servidor.
Quando alguém envia uma solicitação DELETE, o servidor encontra as informações e as remove.
No Flask, o método DELETE usa o atributo request.form.
Example:
Método HEAD
O método HEAD é semelhante ao método GET, mas retorna apenas os cabeçalhos da resposta sem o conteúdo real.
Isso é útil quando você precisa verificar se um recurso existe ou se foi alterado sem fazer o download de todo o recurso.
No Flask, o método HEAD usa o decorador @app.route .
Por padrão, a rota Flask é configurada para responder a solicitações GET , mas pode ser alterada passando um argumento de método para o decorador route() .
Para ilustrar o uso do método POST no roteamento de URL , começaremos projetando um formulário HTML e utilizando o método POST para enviar os dados do formulário para um URL.
Faça um formulário simples com html e nomeie o arquivo form.html:
Example:
Agora você pode inserir o seguinte código de programa no shell do Python.
Example:
Depois de iniciar o servidor de desenvolvimento, abra o arquivo “ form.html ” em seu navegador da web.
Digite seu nome no espaço em branco fornecido na página e clique no botão “ Enviar ”. Isso enviará os dados inseridos para o URL especificado no atributo “action” da tag de formulário HTML .
Neste caso, a URL é “ http://localhost/form “, que está conectada à função “ form() ”. Como os dados estão sendo enviados através do método POST, os valores dos parâmetros “ nm ” e “ pw ” nos dados do formulário podem ser recuperados.
nm = request.form['nm'] pw = request.form['pw']
A parte variável é enviada para a URL “ /submit ”. Como resultado, o navegador da web mostra uma janela com um campo para inserir um nome e uma senha.
Modifique o parâmetro “ method ” no arquivo “ form.html ” para “ GET “ e reabra o arquivo em seu navegador da web.
Desta vez, os dados enviados ao servidor serão retornados através do método GET. Os valores dos parâmetros “nm” e “pw” agora podem ser calculados utilizando este método.
nm = request.args.get('nm') pw = request.args.get('pw')
Neste cenário, “ args ” é um objeto de dicionário que contém um conjunto de pares de parâmetros de formulário e seus respectivos valores.
O valor que pertence aos parâmetros “nm” e “pw” é enviado para a URL “/submit” como antes.
Veja o exemplo da calculadora de métodos HTTP que fornecem a soma de dois números.
Primeiro crie o arquivo form.html:
Example:
Em um shell python, execute o código abaixo:
Example:
Explicação do exemplo acima
- O código é um exemplo de um aplicativo Flask que executa operações aritméticas básicas.
- A aplicação possui duas rotas: “ /sum ” e “ /form ”.
- A rota “/sum” aceita dois parâmetros inteiros, “num1” e “num2”, que são passados como parte da URL. Quando esta rota é acessada, retorna a soma de “ num1 ” e “ num2 ”.
- A rota “ /form ” aceita requisições GET e POST .
- Quando a rota “/form” é acessada através do método POST , os valores “num1” e “num2” são obtidos dos dados do formulário submetido.
- A rota então redireciona para a rota “ /sum ” com os valores de “num1” e “num2” passados como parâmetros.
- Quando a rota “/form” é acessada pelo método GET, os valores “num1” e “num2” são obtidos dos parâmetros de consulta na URL.
- Novamente, a rota redireciona para a rota “/sum” com os valores de “num1” e “num2” passados como parâmetros.
- Por fim, a instrução “ if name == 'main ':” é usada para iniciar o aplicativo Flask no modo de depuração quando o script é executado diretamente.
Benefícios dos Métodos HTTP Flask
A seguir estão algumas vantagens de utilizar os métodos Flask HTTP:
- O Flask permite que você defina métodos HTTP para rotas específicas, o que pode melhorar a segurança ao permitir apenas que métodos autorizados acessem determinadas rotas.
- Você pode aproveitar a flexibilidade do Flask para definir métodos HTTP personalizados, que podem ajudá-lo a construir aplicativos da Web mais complexos que exigem funcionalidades mais específicas.
- Os métodos HTTP do Flask são fáceis de usar e compreender, facilitando a criação de aplicativos da Web simples de manter e atualizar.
- Você pode melhorar o desempenho utilizando os métodos Flask HTTP, que permitem usar o método apropriado para cada tarefa, reduzindo o número de solicitações e respostas desnecessárias.
- Os métodos HTTP do Flask podem ajudá-lo a escrever um código mais limpo, separando a lógica de cada método e facilitando a compreensão e a depuração.
Conclusão
Como desenvolvedor, você pode aproveitar o suporte do Flask para uma variedade de métodos HTTP, o que oferece diversas vantagens. Esses benefícios incluem segurança aprimorada, flexibilidade, simplicidade, melhor desempenho e manutenção mais fácil do código. Com a disponibilidade dos métodos Flask HTTP, você pode criar aplicativos da Web seguros, eficazes e gerenciáveis, tornando-os uma opção popular para suas iniciativas de desenvolvimento da Web.