Estamos usando o Flask para uma de nossas APIs e eu queria saber se alguém sabia como retornar uma resposta HTTP 201?
Para erros como 404, podemos chamar:
from flask import abort
abort(404)
Mas para 201 eu recebo
LookupError: nenhuma exceção para 201
Preciso criar minha própria exceção como essa nos documentos?
python
flask
httpresponse
ingh.am
fonte
fonte
return '', 201
Respostas:
Você pode ler sobre isso aqui.
fonte
page.html
... Não funcionará por si só.Você pode usar o Response para retornar qualquer código de status http.
fonte
Como carece de sugestões, envie o código de status na declaração de retorno e se você o estiver armazenando em alguma variável como
e usando
do que o tempo, verifique se o seu tipo não é str. Como enfrentei esse pequeno problema, também aqui está uma lista de códigos de status seguidos globalmente http://www.w3.org/Protocols/HTTP/HTRESP.html
Espero que ajude.
fonte
Você pode fazer
se você deseja retornar dados JSON na resposta junto com o código de erro Você pode ler sobre respostas aqui e aqui para obter detalhes da API make_response
fonte
No código do seu balão, você deve especificar idealmente o tipo MIME o mais rápido possível:
... etc
fonte
você também pode usar flask_api para enviar resposta
você pode encontrar referência aqui http://www.flaskapi.org/api-guide/status-codes/
fonte
Dependendo de como a API é criada, normalmente com um 201 (criado) você retornaria o recurso que foi criado. Por exemplo, se estivesse criando uma conta de usuário, você faria algo como:
Observe que o número pós-fixado é o código de status retornado.
Como alternativa, você pode enviar uma mensagem para o cliente, como:
fonte
No meu caso, eu tive que combinar o que foi dito acima para fazer funcionar
fonte
Portanto, se você estiver usando o
flask_restful
Package for API retornando 201, será comoonde
data
deve haver qualquer valor hashable / JsonSerialiable, como dict, string.fonte