Open
Description
The Recaptcha validator grabs a specific field by name instead of using field.data
(link to line below). This means that an HTML form must send the recaptcha value as g-recaptcha-response
or the validator fails. Our frontend is a react app that does not use wtforms to generate the HTML. And uses the actual form field names inside POST data.
class TokenForm(Form):
"""Evaluate login attempts with optional recaptcha."""
email = StringField(validators=[validators.DataRequired()])
password = StringField(validators=[validators.DataRequired()])
recaptcha = RecaptchaField()
If the form data is passed as {... "recaptcha": "recaptcha_response_value"}
, the validator fails even though it has the data in the passed field
instance.
Our REST api and frontend rely on field names matching. Is there a workaround for this?