API qui reçoit et retourne uniquement le type booléen ʻis_hoge` dans la requête
hoge.py
from flask import Flask, request
app = Flask(__name__)
@app.route("/", methods=['GET'])
def hello():
is_hoge = request.args.get('is_hoge', type=bool)
return f'{ is_hoge }'
if __name__ == "__main__":
app.run()
--Si vous envoyez true
, True
--Si vous envoyez false
, False
--Si vous envoyez 0
, False
--Si vous envoyez vrai
--Si vous envoyez faux
--Si vous envoyez 0
Que voulez-vous dire? En conséquence de tout, «True» est renvoyé. En ce qui concerne le papier des nouveaux arrivants, je pense que tout a été pris comme une chaîne de caractères et «True» a été renvoyé.
Il semble que python a une fonction pratique appelée strtobool ()
, et je vais l'utiliser.
converter.py
from distutils.util import strtobool
def convert_to_bool(target_object, default_val):
if target_object is None:
return default_val
try:
return strtobool(target_object)
except:
return default_val
Lorsque la valeur introduite en tant qu'argument est «None» ou lorsqu'une exception se produit, «default_val» est renvoyé.
hoge.py
is_hoge = converter.convert_to_bool(request.args.get('is_hoge'), False)
--Si vous envoyez vrai
--Si vous envoyez faux
--Si vous envoyez 0
Les 0 et 1 sont maintenant renvoyés. S'il s'agit d'un jugement de la valeur de vérité d'une valeur numérique, 0 est faux, et autre que 0 est vrai, donc je pense qu'il n'y a pas de problème!
Ceci est mon premier message, donc je vous serais reconnaissant si vous pouviez me faire savoir s'il y a des points qui ne peuvent pas être atteints.
Recommended Posts