greyli / albumy

Check out the newer version (2024) of this project: https://github.com/greyli/moments

Home Page:http://albumy.helloflask.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

重置密码的URL的问题

guoxy2016 opened this issue · comments

utils中的generate_token函数返回的s.dump(data)是bytes类型, 使用url_for组织URL最终会将单引号转义为%27token就变成了b%27....%27,无法验证, 建议改一个decode()

In the utils.py file, generate_token() return s.dumps() is bytes class, when I use url_for() to generate resetpassword url, the token well like b%27......%27, and can't validate. maybe you can change to s.dumps(data).decode().

Python : 3.6
Flask: 1.02

请问你的 Werkzeug 版本是?

Werkzeug 0.15.1
我昨天写的稍微有点问题, 这次我复制了我邮箱和网页的网址, 还有用pycharm获取的token写到了下方:
emial:http://0.0.0.0:8000/auth/reset-password/b%27eyJhbGciOiJIUzUxMiIsImlhdCI6MTU1Mzk0NzcwMCwiZXhwIjoxNTUzOTUxMzAwfQ.eyJpZCI6MTIsIm9wZXJhdGlvbiI6InJlc2V0LXBhc3N3b3JkIn0.7YE_BugZgV9J2sluIYekvIm0XR7F09F1wBrw-AnPcM4XgTSJdRebzSlkQGOB_nBcr7xMSQD6tBm_l66t1oEDJw%27

firefox地址栏: http://0.0.0.0:8000/auth/reset-password/b'eyJhbGciOiJIUzUxMiIsImlhdCI6MTU1Mzk0NzcwMCwiZXhwIjoxNTUzOTUxMzAwfQ.eyJpZCI6MTIsIm9wZXJhdGlvbiI6InJlc2V0LXBhc3N3b3JkIn0.7YE_BugZgV9J2sluIYekvIm0XR7F09F1wBrw-AnPcM4XgTSJdRebzSlkQGOB_nBcr7xMSQD6tBm_l66t1oEDJw'

pycharm中dubug获取的token: 'b'eyJhbGciOiJIUzUxMiIsImlhdCI6MTU1Mzk0NzcwMCwiZXhwIjoxNTUzOTUxMzAwfQ.eyJpZCI6MTIsIm9wZXJhdGlvbiI6InJlc2V0LXBhc3N3b3JkIn0.7YE_BugZgV9J2sluIYekvIm0XR7F09F1wBrw-AnPcM4XgTSJdRebzSlkQGOB_nBcr7xMSQD6tBm_l66t1oEDJw''
第一次写issues有点激动了

好的。因为这个项目固定的 Werkzeug 版本是 0.14.1 (见 Pipfile.lock),麻烦降级 Werkzeug 版本到 0.14.1 后看看能否复现问题。

是这个问题, 降了werkzeug版本之后就好了, 顺便贴上这次的内容把:

email: http://0.0.0.0:8000/auth/reset-password/eyJhbGciOiJIUzUxMiIsImlhdCI6MTU1NDA0MTA4NiwiZXhwIjoxNTU0MDQ0Njg2fQ.eyJpZCI6MSwib3BlcmF0aW9uIjoicmVzZXQtcGFzc3dvcmQifQ.Wen7u6Xbm6kBTmBEoQWVsCSOrPPJfWsShchCPhraI60TxgfPfma7TbOX4CJ4K_OhNGV7fh-2YtBEUkGFOX_LyQ

token:'eyJhbGciOiJIUzUxMiIsImlhdCI6MTU1NDA0MTA4NiwiZXhwIjoxNTU0MDQ0Njg2fQ.eyJpZCI6MSwib3BlcmF0aW9uIjoicmVzZXQtcGFzc3dvcmQifQ.Wen7u6Xbm6kBTmBEoQWVsCSOrPPJfWsShchCPhraI60TxgfPfma7TbOX4CJ4K_OhNGV7fh-2YtBEUkGFOX_LyQ'

感谢反馈,我抽时间看看新版 Werkzeug 哪里的改动导致了这个问题。先关闭了。

备注一下,这个 bug 已在 master 分支修复( pallets/werkzeug#1522 )。