zoukankan      html  css  js  c++  java
  • Flask请求request

    Flask中的request是一个公共变量,需要导入request

    from flask import Flask,request

    接收url中的参数

    @app.route("/req")
    def req():
        print(request.method) #获取访问方式 GET
        print(request.url) #获取url http://127.0.0.1:5000/req?id=1&name=wl
        print(request.cookies) #获取cookies {}
        print(request.path)  # 获取访问路径 /req
        print(request.args) #获取url传过来的值  ImmutableMultiDict([('id', '1'), ('name', 'wl')])
        print(request.args.get("id")) #get获取id  1
        print(request.args["name"]) # 索引获取name wl
        print(request.args.to_dict()) # 获取到一个字典 {'id': '1', 'name': 'wl'}
    
        return "Hello"

    接收form中的参数

    前端代码

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <form action="" method="post">
        <input type="text" name="username">
        <input type="password" name="pwd">
        <input type="submit" value="登陆">
    </form>
    </body>
    </html>

    后端接收到的参数

    @app.route("/login",methods=["POST","GET"])
    def login():
        print(request.form) # 格式 ImmutableMultiDict([('username', '123'), ('pwd', '123')])
        print(request.form.to_dict()) # 格式 {'username': '123', 'pwd': '123'}
        return render_template("login.html")

    接收文件

     request.files :接收文件

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <form action="" method="post" enctype="multipart/form-data">
        <input type="text" name="username">
        <br>
        <input type="password" name="pwd">
        <br>
        <input type="file" name="my_file">
        <br>
        <input type="submit" value="登陆">
    </form>
    </body>
    </html>

    上传文件并保存

    @app.route("/login", methods=["POST", "GET"])
    def login():
        # print(request.form) # 格式 ImmutableMultiDict([('username', '123'), ('pwd', '123')])
        # print(request.form.to_dict()) # 格式 {'username': '123', 'pwd': '123'}
    
        my_file = request.files.get("my_file")  # 格式 ImmutableMultiDict([('my_file', <FileStorage: 'Chrysanthemum.jpg' ('image/jpeg')>)])
        file_path = os.path.join("static", "1.jpg")
        my_file.save(file_path)
    
        return render_template("login.html")

    json data values

    @app.route("/login", methods=["POST", "GET"])
    def login():
       
        print(request.data) # 存放的是请求体中的原始信息 Content-Type:无法识别的类型
        print(request.json) # 请求头中存在 Content-Type:application/json 将请求体中的数据 存放在JSON中
        print(request.values) # CombinedMultiDict([ImmutableMultiDict([]), ImmutableMultiDict([('username', '123'), ('pwd', '123'), ('my_file', '')])])
        print(request.values.to_dict()) # 这是个坑!!!{'username': '123', 'pwd': '123', 'my_file': ''}
        return render_template("login.html")
  • 相关阅读:
    javascript执行机制
    PhpStorm常用的一些快捷键
    php值传递和引用传递的区别是什么?
    echo与print,var_dump()和print_r()的区别
    PHP错误类型及屏蔽方法
    工作中常用的正则表达式
    Linux环境变量配置文件/etc/profile、/etc/bashrc、~/.bashrc的区别以及一些隐藏文件的作用
    log4j配置不生效
    Java执行CMD命令
    jar的解压与打包
  • 原文地址:https://www.cnblogs.com/wanglan/p/10554219.html
Copyright © 2011-2022 走看看