我跟随谷歌为我的网站设置了this tutorial on Real Python OAuth登录。(codebase for tutorial here)
我修改了代码,将其分解为蓝图,并使用应用程序工厂方法启动。
我使用了教程的代码,将其拆分到一个单独的蓝图中,并使用应用程序工厂方法。用户的详细信息通过Google OAuth收集并存储在数据库中。
Traceback (most recent call last):
File "/home/user/otpd/venv/lib/python3.6/site-packages/flask/app.py", line 1969, in finalize_request
response = self.process_response(response)
File "/home/user/otpd/venv/lib/python3.6/site-packages/flask/app.py", line 2268, in process_response
self.session_interface.save_session(self, ctx.session, response)
File "/home/user/otpd/venv/lib/python3.6/site-packages/flask/sessions.py", line 387, in save_session
samesite=samesite,
File "/home/user/otpd/venv/lib/python3.6/site-packages/werkzeug/wrappers/base_response.py", line 481, in set_cookie
samesite=samesite,
File "/home/user/otpd/venv/lib/python3.6/site-packages/werkzeug/http.py", line 1163, in dump_cookie
buf = [key + b"=" + _cookie_quote(value)]
TypeError: unsupported operand type(s) for +: 'NoneType' and 'bytes'代码运行在使用Gunicorn的远程服务器上。当我在本地运行代码时,没有任何问题。此问题仅在远程服务器上出现。
对如何调试有什么建议吗?
谢谢!
发布于 2020-05-20 13:32:42
已修复。我在配置文件中设置了无效的SESSION_COOKIE_NAME。将其更改为默认值,一切都会正常工作。
对于将来会遇到这个问题的冒险家们:请确保您正确设置了会话环境变量!您需要应用程序密码和会话cookie名称才能运行Flask Sessions。
https://stackoverflow.com/questions/61901351
复制相似问题