Python Flask Basics Character Builder Cookies

If request is a dictionary object, why must dict be called on it before turning it into a json string?

response.set_cookie("bunny", json.dumps(dict(request.form.items())))
# I tried this w/out the dict(), with dict(form..items)
# this snippet only seems to work this way
# although I believe I read that request is a dictionary obj
# it seems odd to me that a dictionary obj 
# would need to be wrapped in a dictionary function to work

1 Answer

Paema Hare
Paema Hare
20,533 Points

The request object is a ImmutableMultiDict, not a regular Dict. So we change the request object to be a normal Dict object, since Json requires dicts.

Now I don't know exactly what an ImmutableMultiDict is, but I imagine it's like a dict, but not one you can make changes to (the immutable part)