作家
登录

一线Python运维开发带你秒懂Flask框架

作者: 来源: 2017-10-25 10:10:25 阅读 我要评论

沙龙晃荡 | 去哪儿、陌陌、ThoughtWorks在主动化运维中的实践!10.28不见不散!

会话分为客户端和办事端2种情势,from flask importsession 中封装了基于客户端的cookies,示例如下:


信赖曾经纠结过这个问题:如何才能彻底控制flask?

Flask是一个应用 Python 编写的轻量级 Web 应用框架。其 WSGI 对象箱采取 Werkzeug ,模板引擎则应用 Jinja2 。Flask应用 BSD 授权。

Flask也被称为 “microframework” ,因为它应用简单的核心,用 extension 增长其他功能。Flask没有默认应用的数据库、窗体验证对象。

flask中封装了make_response作为客户峨锾螃,返回http头信息、状况码等,resp = make_respone(‘hello’.encode()),resp.set_cookie(‘name’, ‘jack’) ,将resp作为返回,可以手动灵活的增长了cookie

今天我们邀请到了多年大年夜事Python开辟的不动师长教师,让他为我们带来flask开辟的一线拭魅战。

分享开端

大年夜家好,下面如今开端分享flask开辟,先看下本次分享的内容:

1、Flask Web框架介绍

Flask是微型web框架,框架本身十分精简,微型并不代表其功能弱,核心代码基于Werkzeug, Jinja 2 这两个库,它以插件情势的进行功能扩大,且插件易于安装与应用,并且可以自行开辟扩大插件

与其他web框架类似,flask中请求(request),路由(route),响应(response)构成其完全的一个根本http流程。

2、作为入门flask框架异常易于应用

懂得其根本构造后,可以敏捷进行MVC开辟,或者将其算作后端restfulApi来响应数据。

将user这些类似的功能分成一个蓝图模块,留意蓝图文件不克不及和蓝图对象同名,不然会冲突报错

第一步:我们先来竽暌姑虚拟情况安装flask

虚拟情况,将当前运行情况完全与体系的python情况进行隔离,这里我们应用pyenv这个库来进行构建情况

以centos体系为例安装虚拟情况:

1、yum install zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel

2、curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer

| bash

设备情况变量, 在 ~/.bash_profile里增长如下内容:

  1. export PATH="~/.pyenv/bin:$PATH“ 
  2.  
  3. eval "$(pyenv init -)" 
  4.  
  5. eval "$(pyenv virtualenv-init -)“  

第二步 :在生成虚拟情况 激活此pyenv

1、体系一一般自带的python版本是python2.7.10

2、我们自行下载一个python版本是2.7.12

3、应用sohu的镜像源:http://mirrors.sohu.com/python/

找到python版本是2.7.12的包下载到本地

为何须要应用虚拟情况? 因为虚拟情况对于每一个python情况来说是自力开来的,用虚拟情况可以在一台机械上运行多个项目时,每个项目标情况是隔离,不产生依附。

4、如需其他版本也可以下载对应的版本放到~/.pyenv/cache文件夹下面(cache文件夹假如不存在,自行创建)

5、然后履行 pyenv install 版本号 安装对应的python版本: pyenv install 2.7.12

6、安装2.7.12版本成功后,创建一个目次为完全隔离的python虚拟情况:

pyenv virtualenv 2.7.12 venv27

mkdir -pv virtu

cd virtu pyenv local venv27 cd .. cd virtu 主动激活了venv27情况

Pip是一个用来安装python第三方库的对象

sudo yum -y install epel-release (安装yum包扩大)

sudo yum –y install pip

应用阿里云的python包加快pip安装

Pip 设备阿里云镜像:

mkdir ~/.pip

5.3蓝图

vim ~/.pip/pip.conf, 输入以下内容

[global] index-url=http://mirrors.aliyun.com/pypi/simple/

第四步:安装flask:

cd vnvn27 (刚才构建的虚拟情况,切换到了一个完全虚拟情况)

Env参数是包含了客户端请求的信息和办事端的情况信息,可以将其打印出来,看下个中包含的变量。

2.0:wsgi规范

应用上述db对象,model字段持续db.Model,在mvc中此表示model层,用来进行数据库表字段映射接洽关系以及数据写入保存等.

Python应用wsgi网关进行Web开辟,flask基于wsgi网关,flask中实例的app,也称之为一个wsgi 应用

Wsgi是python中定义的一种网关协定规范,pep333对此的相干解释: https://www.python.org/dev/peps/pep-0333/

from wsgiref.simple_server import make_server

simple_server实现了一个简略单纯的http办事器,我们可以用它来运行一个wsgi应用

2.1:wsgi规范2

下面示例我们可以用wsgiref这个包实现一个简单的wsgi web框架来懂得其工作流程:

Pip install flask

2.2:wsgi规范3

Start_response函数作为参数传入runserver应用中,必须要start_response(status,header)来进行响应,它是由网关接口定义的函数。

在上述中可以看出,wsgi的感化是在web办事器和web应用之间的桥梁,web办事器监听将客户端请求转发给实现wsgi规范接口处理,wsgi接将请求进行中转给上层的web应用处理,web应用处理完成并生成响应返回给wsgi接口,然后web办事器将收到的响应返回给客户端。

trusted-host=mirrors.aliyun.com

 1/4    1 2 3 4 下一页 尾页

  推荐阅读

  希望涨工资?看看为开发者带来更高收入的十大开源技术

沙龙晃荡 | 去哪儿、陌陌、ThoughtWorks在主动化运维中的实践!10.28不见不散! Linux 基金会和在线求职雇用网站 Dice 宣布了一份关于开源雇用的查询拜访结不雅。结不雅显示,相对于其他类>>>详细阅读


本文标题:一线Python运维开发带你秒懂Flask框架

地址:http://www.17bianji.com/lsqh/38170.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)