接触Python之后我第一次听说Flask,我就根据自己搜罗的知识尽可能简洁的说出来。如果不准确的地方还请指正,谢谢。

Flask是什么?            

  1. Flask是基于Python编写的微型的轻量级web应用框架。微框架真正的含义是简单和短小。

Flask有哪些特点?      

  1. 自带开发服务器和debugger
  2. 集成单元测试(unit testing)
  3. RESTful request dispatching
  4. 使用Jinja2模板引擎
  5. 支持secure cookies(client side sessions)
  6. 100% WSGI 1.0兼容
  7. Unicode based
  8. 详细的文件/教学
  9. Google App Engine兼容
  10. Flask没有默认使用的数据库、窗体验证工具。
  11. Flask保留了扩展的弹性,可以用Flask-extension加入一些功能:ORM、窗体验证工具、文件上传、各种开放式身份验证技术。
  12. 简单易学

Flask能做什么?    

  1. Flask是一个微框架,提供了比较完善的Web服务器所需的基本功能,同时允许且建议用户自由选择扩展的技术。Flask适合开发API服务(独立的权限系统,依赖的第三方组件)。
  2. Flask适合做app后台或基于json通信的ajax应用,是轻量级框架,我用到的一个技术方案是pypy+ Flask +peewee + uWSGI + nginx + ubuntu server,速度快,开发效率高,主要是通过服务器返回json数据(json可以用压缩方式)走http和各个app交互,你也可以用Flask+WebSocket实现类似在线游戏的长连接,数据格式建议用json,如果有性能要求可以用Protocol Buffers协议。这样基于json api(RESTful太底层了,一般用json文本就可以了)的开发方式,一套后台程序,可以用于ajax网页,android,ios,pc,tv等多套app,最大程度满足了软件复用思想,否则一个app开发一个后台或变种后台,代价非常高,也不利于安全和性能。微服务就是这种思想扩展,但主要是针对企业应用,web2.0发展以来,一般应用用http api生成json数据交互就好,mvc模式不适合在http api上用,mvc模式是web1.0时代没有ajax,json无法分离html的妥协解决方案。http调用类似函数一样,有入口参数,返回json给调用者,当然可以在返回时加密、压缩,从而实现低耦合高内聚。另外对于http api需要防止注入攻击,加强权限控制,限制调用次数。
 

Python: Flask框架简单介绍的更多相关文章

  1. Python -- Scrapy 框架简单介绍(Scrapy 安装及项目创建)

    Python -- Scrapy 框架简单介绍 最近在学习python 爬虫,先后了解学习urllib.urllib2.requests等,后来发现爬虫也有很多框架,而推荐学习最多就是Scrapy框架 ...

  2. Python+selenium之简单介绍unittest单元测试框架

    Python+selenium之简单介绍unittest单元测试框架 一.unittest简单介绍 unittest支持测试自动化,共享测试用例中的初始化和关闭退出代码,在unittest中最小单元是 ...

  3. Python Flask框架路由简单实现

    Python Flask框架路由的简单实现 也许你听说过Flask框架.也许你也使用过,也使用的非常好.但是当你在浏览器上输入一串路由地址,跳转至你所写的页面,在Flask中是怎样实现的,你是否感到好 ...

  4. Django - Django框架 简单介绍

    Django框架 简单介绍 本文地址: http://blog.csdn.net/caroline_wendy/article/details/29172271 1. 介绍 Django是一个开放源码 ...

  5. Linux ubantu中安装虚拟/使用环境virtualenv以及python flask框架

    今天学习了python flask框架的安装过程以及使用案例,感觉网上讲的东西都没有从我们这种初学者的角度去考虑(哈哈),最后还是奉上心得: 1.安装virtualenv $ sudo apt-get ...

  6. #3使用html+css+js制作网页 番外篇 使用python flask 框架 (I)

    #3使用html+css+js制作网页 番外篇 使用python flask 框架(I 第一部) 0. 本系列教程 1. 准备 a.python b. flask c. flask 环境安装 d. f ...

  7. jQuery系列 第一章 jQuery框架简单介绍

    第一章 jQuery框架简单介绍 1.1 jQuery简介 jQuery是一款优秀的javaScript库(框架),该框架凭借简洁的语法和跨平台的兼容性,极大的简化了开发人员对HTML文档,DOM,事 ...

  8. python shutil模块简单介绍

    python shutil模块简单介绍 简介 shutil模块提供了大量的文件的高级操作.特别针对文件拷贝和删除,主要功能为目录和文件操作以及压缩操作. shutil 模块方法: copy(src, ...

  9. python之pandas简单介绍及使用(一)

    python之pandas简单介绍及使用(一) 一. Pandas简介1.Python Data Analysis Library 或 pandas 是基于NumPy 的一种工具,该工具是为了解决数据 ...

随机推荐

  1. thinkphp---用事务处理批量操作

    我们在进行一些业务逻辑的时候,难免会出现批量操作的问题,特别是批量修改操作,如果数据量大,总会考虑到批量修改到一半怎么办?所以如果使用事务来进行批量操作就会好很多,直接看代码: public func ...

  2. 7.20 python线程3

    2018-7-20 18:46:49 去俺弟家玩去 后天回来 1.复习 # !/usr/bin/env python # !--*--coding:utf-8 --*-- # !@Time :2018 ...

  3. uploadify3.2.1 多文件上传总是只能上传一个文件

    再网上找了老半天原因,有人说是上传时调用方法参数应该加上*号(:$('#mulfile_upload').uploadify('upload','*');) 总是不行, 我怀疑下面的原因: 我就以为是 ...

  4. Memcached 简单利用和简单了解(Mac的安装和使用)

    Memcached 是一种用于分布式应用的一种缓存机制.应用也比较广泛.这里来学习一下. 首先Memcached 是分布式网站架构都需要用到的缓存机制.缓存就是服务器利用多余的空间上开辟了一个储存空间 ...

  5. PyCharm+Eclipse共用Anaconda的数据科学环境

    1.安装anaconda2 安装好之后,本地python环境就采用anaconda自带的python2.7的环境. 2.安装py4j 在本地ctrl+r打开控制台后,直接使用pip安装py4j,因为a ...

  6. codeforces 892 - A/B/C

    题目链接:https://cn.vjudge.net/problem/CodeForces-892A Jafar has n cans of cola. Each can is described b ...

  7. chrome Sources选项卡 设置JavaScript事件断点

    chrome console 可以查看执行的javascript么? 举个例子: 比如这张图片,163邮箱,我点击上一封邮件和下一封邮件执行的是javascript方法. 虽然在chrome的cons ...

  8. ElasticSearch报 EsThreadPoolExecutor[search, queue capacity = 1000, org.elasticsearch.common.util.concurrent.EsThreadPoolExecutor@c0efba

    ElasticSearch报以下错误的解决办法: "type": "es_rejected_execution_exception", "reason ...

  9. 《Nginx - location配置》

    一:Location 作用 - location 定位 ,也就是可以通过不同URL进行定位,可以很大的增加它配置的灵活性. 二:相关变量 示例: http://192.168.27.27/xxxx $ ...

  10. MYSQL中的CASE WHEN END AS

    SELECT id,`NAME`,province,city, phone, CASE sex WHEN 'M' THEN '男' WHEN 'F' THEN '女'END AS sexFROM `p ...