Okazuje się, że Flask ustawia request.data
na pusty ciąg znaków, jeśli typ treści żądania jest application/x-www-form-urlencoded
. Ponieważ używam żądania ciała JSON, po prostu chcę przeanalizować json lub wymusić Flask, aby je przeanalizować i zwrócić request.json
.Kolba - Jak odczytać surową treść w żądaniu POST, gdy typem treści jest "application/x-www-form-urlencoded"
Jest to potrzebne, ponieważ zmiana typu zawartości AJAX wymusza żądanie HTTP OPTION, co komplikuje back-end.
Jak sprawić, aby Flask zwrócił nieprzetworzone dane w obiekcie żądania?
Wygląda na to, że był to również sposób na pobranie danych z naszego posta do butelki. Wystarczy zmienić request.form.keys() [0] na 'list (request.forms.keys()) [0]'. Dzięki za ostateczne rozwiązanie godzin debugowania! –
Dlaczego to działa? Wygląda na to, że powinien to być tylko pierwszy klucz słownika parsowany z ciała, ale w jakiś sposób zwraca całe ciało? – max
Czy ktoś może wyjaśnić, dlaczego dane są umieszczane w formularzach kluczy? –