IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    Flask入门学习(五):request对象(获取HTML表单数据为例)

    52txr发表于 2024-07-20 16:17:00
    love 0

    在Flask中,request对象用于获取用户提交给服务器的数据。它包含前端发送的请求数据。在使用Flask时,需要从flask模块导入request对象,而不是使用名为requests的独立Python库。通过request.form.get()方法可以获取HTML表单中的输入控件的值,该方法通过输入控件的name属性来定位和获取数据。例如,在一个支持GET和POST请求的路由处理函数中,如果是POST请求,可以通过request.form.get('name')和request.form.get('password')分别获取表单中用户名和密码的输入值。

    Flask中的request

    web开发免不了需要获取用户提交的数据,Flask为我们提供了request对象来获取用户提交给服务器的数据。

    request包含前端发送过来的请求数据。

    切记:记得使用flask中引入而不是import requests。requests是一个单独的python库。

    from flask import request

    获取HTML表单数据

    前端内容

    from flask import Flask, render_template, request
    
    app = Flask(__name__)
    
    @app.route('/', methods=['GET', 'POST'])
    def index():
        # 对请求方式进行判断
        # 如果是GET请求,则渲染index.html页面
        if request.method == 'GET':
            # 处理GET请求
            # Get请求则渲染表单
            return render_template('index.html')
    
        if request.method == 'POST':
            # 处理POST请求
            # 获取表单数据
            #  <input type="text" name="name"> 获取用户名
            name = request.form.get('name')
            #  <input type="password" name="password"> 获取密码
            password = request.form.get('password')
            print(name, password)
    
            return "这是POST请求"
    
    if __name__ == "__main__":
        app.run()
    

    Flask处理

    from flask import Flask, render_template, request
    
    app = Flask(__name__)
    
    @app.route('/', methods=['GET', 'POST'])
    def index():
        # 对请求方式进行判断
        # 如果是GET请求,则渲染index.html页面
        if request.method == 'GET':
            # 处理GET请求
            # Get请求则渲染表单
            return render_template('index.html')
    
        if request.method == 'POST':
            # 处理POST请求
            # 获取表单数据
            # 根据输入控件的name属性进行获取
            #  <input type="text" name="name"> 用户名
            name = request.form.get('name')
            #  <input type="password" name="password"> 密码
            password = request.form.get('password')
            print(name, password)
    
            return "这是POST请求"
    
    if __name__ == "__main__":
        app.run()
    

    运行结果:

    代码的运行结果



沪ICP备19023445号-2号
友情链接