python--Flask学习(五)--get和post请求、钩子函数

本文详细介绍了HTTP请求中的GET与POST的区别及应用场景,包括参数传递方式、Flask框架下的请求处理等,并探讨了全局变量g属性及钩子函数的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、get请求和post请求
(1)get请求

  • 使用场景:如果只对服务器获取请求,并没有对服务器产生任何影响,那么这时候使用get请求;

  • 传参:get请求传参是放在url中,通过’?'的形式来指定key和value的。
    (2)post请求

  • 使用场景:如果要对服务器产生影响,那么使用post请求;

  • 传参:post请求传参不是放在url中的,是通过’form data’的形式发送给服务器的。
    (3)get和post请求获取参数

  • get请求是通过flask.request.args来获取的;

  • post请求是通过flask.request.form来获取的;
    (4)post请求在模板中需要注意几点

  • input标签中,要写name来表示value的key,方便后台获取;

  <td><input type="text" placeholder="请输入用户名" name="username"></td>
  • 在写form表单的时候,要指定method=post,并且要指定action='/login'.
<form action="{{ url_for('login' )}}" method="post">

2、保存全局变量的g属性
(1)g:gobal g对象是专门用来保存用户的数据的;
(2)g对象在一次请求中的所有代码的地方,都是可以使用的。(第二次请求,g对象就会改变)
3、钩子函数(hook)
(1)before_request

  • before_request:在请求之前执行;

  • before_request是在视图函数执行之前执行的;

  • before_request这个函数只是一个装饰器,它可以把需要设置为钩子函数的代码放在视图函数执行之前来执行。
    (2)上下文处理器钩子函数(context_processor)

  • 上下文处理器应该返回一个字典,字典中的’key’会被当成变量来渲染;

  • 上下文处理器中返回的字典,在所有的页面中都是可用的;

  • 被这个装饰器装饰的钩子函数,必须要返回一个字典,即使这个字典为空也要返回。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值