Ho del codice all'interno di un'applicazione Flask che utilizza JSON nella richiesta e posso ottenere l'oggetto JSON in questo modo:
Request = request.get_json()
Funziona bene, tuttavia sto cercando di creare unit test utilizzando il modulo unittest di Python e ho difficoltà a trovare un modo per inviare un JSON con la richiesta.
response=self.app.post('/test_function',
data=json.dumps(dict(foo = 'bar')))
Questo mi dà:
>>> request.get_data()
'{"foo": "bar"}'
>>> request.get_json()
None
Flask sembra avere un argomento JSON in cui puoi impostare json = dict (foo = 'bar') all'interno della richiesta di post, ma non so come farlo con il modulo unittest.
request.data
contiene? Spesso quando l'analisi json fallisce a causa di un input errato, fallisce silenziosamente e restituisceNone
quindi i dati di input grezzi potrebbero non essere json.