Flask 简单使用

一、flask介绍

flask是一个轻量级的web框架,可快速的搭建程序。适用于简单的程序。

二、对比Django组件

1 Django:无socket、中间件、路由系统、视图(CBV,FBV)、 模板、ORM、cookie、Session、Admin、Form、缓存、信号、序列化....
2 Flask:无socket、中间件(扩展)、路由系统、视图(CBV)、第三方模板(jinja2)、cookie、Session(很弱)

三、WSGI

web服务网关接口协议(WSGI),功能为创建Socket,监听请求转发请求。

Flask依赖werkzeug模块实现WSGI协议

from werkzeug.wrappers import Request,Response
from werkzeug.serving import run_simple

@Request.application
def hello(request):
    return Response(‘Hello world!‘)

if __name__ == ‘__main__‘:
    run_simple(‘localhost‘,‘4000‘,hello)

四、Flask简单实现用户登录

flask_practice/example.py  

from flask import Flask,render_template,request,redirect,session

app = Flask(__name__,template_folder=‘templates‘,static_url_path=‘/static‘)
# template_folder=‘templates‘ 指定templates目录名,默认为templates
# static_url_path=‘/static‘  影响页面静态文件前缀路径
# root_path=‘‘         指定当前目录位置路径,默认为当前目录

app.secret_key = ‘xxxxxxddddddffffffffff‘   
# flask的session没有持续存储到数据库或其他空间,而是生成随机字符串作为session
# 之后将session加密放到cookie中的发送到客户端浏览器,secret_key对session加密同时的加言后,加大了反解难度

@app.route(‘/login‘,methods=[‘GET‘,"POST"])  # 创建路由映射,并保存路由关系,methods指定请求的方法
def login():
    if request.method == ‘GET‘:
        return render_template(‘login.html‘)
    else:
        user = request.form.get(‘user‘)
        pwd = request.form.get(‘pwd‘)
        if user == ‘alex‘ and pwd == ‘123‘:
            session[‘user_info‘] = user
            return redirect(‘/index‘)
        else:
            return render_template(‘login.html‘,msg=‘用户名或密码错误‘)  # msg=‘用户名或密码错误‘传递至前端

@app.route(‘/index‘,methods=[‘GET‘])      # 路由系统的本质,是将url和函数封装到rule对象,添加到MAP中
def index():
    if not session.get(‘user_info‘):
        return redirect(‘login‘)
    return ‘欢迎登录‘

if __name__ == ‘__main__‘:
  # 启动程序,监听用户请求
  # 一旦请求到来执行app.__call__方法
  # 封装用户请求
  # 进行路由匹配函数
    app.run()  

flask_practice/templates/login.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <h1>login</h1>
    <form method="post">
        <input type="text" name="user">
        <input type="text" name="pwd">
        <input type="submit" value="登录">{{msg}}
    </form>
    <img style="width: 300px;height: 200px" src="/static/img/ooo.jpg" >
</body>
</html>

原文地址:https://www.cnblogs.com/yunweixiaoxuesheng/p/8342559.html

时间: 2024-11-05 10:33:46

Flask 简单使用的相关文章

基于Server-Sent Event的简单聊天室 Web 2.0时代,即时通信已经成为必不可少的网站功能,那实现Web即时通信的机制有哪些呢?在这门项目课中我们将一一介绍。最后我们将会实现一个基于Server-Sent Event和Flask简单的在线聊天室。

基于Server-Sent Event的简单聊天室 Web 2.0时代,即时通信已经成为必不可少的网站功能,那实现Web即时通信的机制有哪些呢?在这门项目课中我们将一一介绍.最后我们将会实现一个基于Server-Sent Event和Flask简单的在线聊天室.

flask 简单通讯录,内网IP管理系统

flask 简单通讯录,内网IP管理系统.学习flask简单写来练习   下载地址:https://git.oschina.net/puzz/web.git

Flask ==&gt; 简单用户登录

Flask ==>  简单用户登录 from flask import Flask,render_template,request,redirect,session import functools app=Flask(__name__,template_folder='templates',static_url_path='/xxxxxx') app.secret_key = "sdfasdfasdf3fsdf" #加密钥 def wapper(func): @functool

flask 简单实践

1.Flask 表单: 为了能够处理 web 表单,我们将使用 Flask-WTF,该扩展封装了 WTForms 并且恰当地集成进 Flask 中. 创建一个配置文件以至于容易被编辑.(文件 config.py): CSRF_ENABLED = TrueSECRET_KEY = 'shi-yan-lou' Flaks-WTF 扩展只需要两个配置. CSRF_ENABLED 配置是为了激活 跨站点请求伪造 保护.在大多数情况下,你需要激活该配置使得你的应用程序更安全些. SECRET_KEY 配置

FLASK简单入门

假定你已经安装好了 Flask.如果没有,请跳转到 安装 章节. 一个最小的应用? 一个最小的 Flask 应用看起来会是这样: from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): return 'Hello World!' if __name__ == '__main__': app.run() 把它保存为 hello.py (或是类似的),然后用 Python 解释器来运行. 确保你

docker打包flask简单程序

简单代码: from flask import Flask app=Flask(__name__) @app.route('/') def hello(): return 'hello world' if __name__ == '__main__': app.run() app.py FROM python:3.6 LABEL maintainer="FELIX [email protected]" RUN pip3 install -i https://pypi.tuna.tsin

flask——简单博客示例教程(四)

原文:https://blog.csdn.net/u014793102/article/category/9285123 Flask从入门到做出一个博客的大型教程(四) 在开始之前,先来看下项目的整体结构. 1 flask 2 ├── app 3 │ ├── forms.py 4 │ ├── __init__.py 5 │ ├── models.py 6 │ ├── routes.py 7 │ └── templates 8 │ ├── base.html 9 │ ├── index.html

flask——简单博客示例教程(二)

原文:https://blog.csdn.net/u014793102/article/category/9285123 Flask从入门到做出一个博客的大型教程(二) 在开始之前,先来看下项目的整体结构. 1 flask 2 ├── app 3 │ ├── __init__.py 4 │ ├── routes.py 5 │ └── templates 6 │ ├── base.html 7 │ └── index.html 8 ├── myblog.py 3 表单 前面已经讲了一个简单的hel

flask简单web应用

推荐一个学习python的网站,个人觉得在这里面收获挺大的,希望对后来学习flask的小伙伴们有帮助.http://www.pythondoc.com/ 用flask框架实现第一个web应用 首先需要搞清楚几个概念: 1.视图:视图是响应来自网页浏览器的请求的处理器.在 Flask 中,视图是编写成 Python 函数,在里面实现功能.每一个视图函数是映射到一个或多个请求的 URL. 2.应用程序:用来创建应用对象,导入视图等. 3.启动脚本:用来启动web服务器的脚本程序,即 run.py.