使用 Python 从 0 开发属于你的个人管理系统 03 篇| 这,就是 Flask 的响应交互操作
现在,我们继续对 Flask 的常用使用方式进行了解。
当用户通过浏览器输入 URL 请求你的服务,你需要作出响应,比如上一篇中提到的数据渲染的返回,再具体点说,你可以在 Chrome 浏览器中打开开发者面板,然后点击「Network」,开始发送请求,这时候你可以看到这些响应的内容:
可以看到响应的状态吗,响应的类型等信息,你在点击相应的链接进去,你可以看到响应的具体信息:
当然,你在使用 Flask 开发服务的时候,并不需要关心到具体的每个响应参数,但是你可以对一些响应进行操作。
通往 Python 高手之路
404 响应
当用户访问你的具体服务,但是不存在的时候会返回 404 的状态:
你可以通过 errorhandler 进行拦截,从而自定义自己的 404 响应:
@app.errorhandler(404) def page_not_found(error): return '你查找的页面不存在', 404
那么这时候用户访问的所有 404 错误,都会直接调用这个方法。
其它响应的错误码或者异常你都可以通过 errorhandler 拦截并且自定义。
页面重定向
有时候你定义的请求 URL 可能不存在了,你想让他重定向到正确的页面去,那就可以使用 redirect 方法,比如,你想让用户访问 /fxxk 的时候,直接让它重定向到百度页面去,那么就可以这样:
这篇先不讲数据库相关的,我们可以用 list 和 dict 来封装会所的名称、具体会所下的技师员工号码和价格的数据,比如有一家叫做 “超棒休闲会所”,里面有一位技师 808 号,按摩价格 666,就可以这样表示:
那么这个时候,我们要给前端提供获取所有会所数据的 API,返回 json 数据,我们就可以这样:
这里我们用到了 jsonify ,它可以将字典转化为 Json, 为了防止中文乱码,我们可以这样设置:
跑起来看看:
JSON 常用语我们的前后端数据交互,我们之后还会经常使用到。
session 会话
通过 Flask 的 session 对象可以存储到用户的一些特定信息,比如我们可以对已经登录的用户做一些数据标识或存储,避免用户每次访问服务都需要登录:
当用户登录成功时,可以使用 session 储存用户信息:
session['usernmae'] = request.form['usernmae']
当用户访问页面的时候,可以通过 session 判断用户是否登录:
if 'uername' in session: # 已经登录,直接访问
当用户退出的时候,可以在 session 中移除这个用户:
session.pop('usernmae')
OK, 以上就是小帅b今天给你带来的分享,前几篇我会先把这些 Flask 的基础操作给你说下,你可以多了解一下,后面你才能更加「得心应手」,我们下一篇见,peace!