• 用户认证
    • 问题
    • 解法
    • import hashlib import web
    • 注意

    用户认证

    原作者没有写完,但是可以参照下一节,写得很详细

    问题

    如何完成一个用户认证系统?

    解法

    用户认证系统由这几个部分组成:用户添加,用户登录,用户注销以及验证用户是否已登录。用户认证系统一般都需要一个数据库。在这个例子中,我们要用到MD5和SQLite。

    import hashlib import web

    1. def POST(self):
    2. i = web.input()
    3. authdb = sqlite3.connect('users.db')
    4. pwdhash = hashlib.md5(i.password).hexdigest()
    5. check = authdb.execute('select * from users where username=? and password=?', (i.username, pwdhash))
    6. if check:
    7. session.loggedin = True
    8. session.username = i.username
    9. raise web.seeother('/results')
    10. else: return render.base("Those login details don't work.")

    注意

    这仅仅是个例子,可不要在真实的生产环境中应用哦。