2015-04-10 11 views
7

Sto scrivendo un'API RESTful in Flask. Posso accedere ai parametri URL tramite Request Object. Qual è il modo migliore per convalidare i parametri URL specificati?Come convalidare i parametri URL nell'app Flask?

Ad esempio:

/places?zip=97239 # This is a valid filter 
/places?foo=bar # This is not a valid filter, 404 response? 

Una soluzione è quella per la ricerca in request.args e confrontare ogni voce nei confronti di un insieme di parametri URL validi. C'è un modo migliore?

Grazie!

risposta

3

Inserire i parametri GET in un dizionario e convalidarlo utilizzando voluptuous.

Ad esempio:

parameters = Schema({ 
    Required('zip'): Coerce(int), 
}) 

accetterà qualsiasi dizionario con una chiave "zip" che ha un valore che può essere costretto ad un numero intero (quindi 1 o "1" a seconda di come si ottengono i valori). È quindi possibile convalidare utilizzando:

parameters(my_get_params) # should not raise an exception 
Problemi correlati