• flask get和post请求使用


    直接看代码

    #-*-coding:utf-8-*-
    from flask import Flask,url_for,redirect,render_template,request
    app = Flask(__name__)
    
    @app.route('/')
    def index():
        return render_template('index.html')
    
    
    @app.route('/search')
    def search():
        print (request.args)          #get请求,打印url后面所有的参数(key:value形式),如果有多个参数,通过request.args.get('key')的方式获取值
        return render_template('search.html')
    
    
    @app.route('/login/',methods=['POST','GET'])
    def login():
        if request.method == 'GET':              #此处判断get和post方法与django相同
            return render_template('login.html')
        else:
            username = request.form.get('username')    #post请求。获取模版语言中输入框输入的值
            password = request.form.get('password')
    
            return "post request, username: %s password:%s" % (username,password)
    
    
    if __name__ == '__main__':
        app.run(debug=True)

    模版语言:

    search.html
    
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <a href="{{ url_for('search',q='hello') }}">搜索参数测试链接</a>
    </body>
    </html>
    
    
    login.html
    {% extends "base.html" %}
    
    {% block main %}
        <form action="{{ url_for('login') }}" method="post">
            <table>
                <tbody>
                    <tr>
                        <td>用户名:</td>
                        <td><input type="text" placeholder="请输入用户名" name="username" /></td>
                    </tr>
                    <tr>
                        <td>密码:</td>
                        <td><input type="text" placeholder="请输入密码" name="password" /></td>
                    </tr>
                    <tr>
                        <td></td>
                        <td><input type="submit" value="登陆"/></td>
                    </tr>
                </tbody>
            </table>
        </form>
    {% endblock %}
    
    
    base.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <link rel="stylesheet" href="{{ url_for('static',filename='css/index.css') }}"> <style> .nav{ background:rebeccapurple; height:65px; } ul{ overflow: hidden; } ul li{ float: left; list-style: none; padding:0 10px; line-height: 65px; } ul li a{ color: white; } </style> </head> <body> <div class="nav"> <ul> <li><a href="{{ url_for('login') }}">登陆</a></li> <li><a href="#">发布问答</a></li> </ul> </div> {% block main %} {% endblock %} <img src="{{ url_for('static',filename='images/aa.jpg') }}"> </body> </html>

    访问链接

    http://127.0.0.1:5000/search

    打印结果

  • 相关阅读:
    IT北漂攻略—择业篇(程序员.net)
    Log4net和Log2Console 结合使用时出现的中文问题
    日志设计规范
    IT北漂攻略租房篇
    Log2Console日志监测工具使用方法
    一些好用的开源控件
    工作流设计简介
    代码设计规范
    正则表达式分割字符串但是不分割字符串中引号中间的数据
    解决Android 应用运行报Unable to resolve superclass of L错误
  • 原文地址:https://www.cnblogs.com/FRESHMANS/p/8460227.html
Copyright © 2020-2023  润新知