• 初始化

所有Flask程序都必须创建一个程序实例

程序实例是Flask类的对象,经常使用下述代码创建:

from flask import Flask
app = Flask(__name__)

Flask类的构造函数只有一个必须指定的参数,及程序主模块或包的名字。

在大多数程序中,Python的__name__变量就是所需的值。


  • 路由和视图函数

客户端把请求发送给Web服务器,Web服务器再把请求发送给Flask程序实例。

程序实例需要知道对每个URL请求运行哪些代码,所以保存了一个URL到python函数的映射关系。处理URL和函数之间关系的程序成为路由

在Flask程序中定义路由的最简便方式,是使用程序实例提供的app.route修饰器,把修饰函数注册为路由。

如下面的例子所示:

@app.route('/')
def index():
return '<h1>Hello World!<h1>'

上面的例子把index()函数注册为程序根地址的处理程序。如果部署程序的服务器域名为www.example.com,在浏览器访问http://www.example.com后,会触发服务器执行index()函数。这个函数的返回值成为响应,是客户端接收到的内容。

像index()这样的函数称为视图函数


  • 启动服务器

程序实例用run方法启动Flask集成的开发Web服务器:

if __name__ == '__main__':
app.run(debug=True)

__name__ == '__main__'是python的惯常用法,在这里确保直接执行这个脚本时才启动开发Web服务器。


  • 一个完整的小程序

前面介绍了Flask Web程序的不同组成部分,开始写一个程序了。

整个manman.py脚本程序就是把前面介绍的三部分合并到一个文件中。

程序代码如下所示:

# -*- coding: utf-8 -*-
# manman.py 一个简单的小程序
from flask import Flask
app = Flask(__name__) @app.route('/')
def index():
return '<h1>曼曼,早上好,中午好,晚上好!<h1>' if __name__ == '__main__':
app.run(debug=True)

运行这个程序,然后在浏览器中输入地址:http://127.0.0.1:5000/

就会看到:


好了,关于Flask Web简单小程序就介绍到这里。

:)

一个简单的flask程序的更多相关文章

  1. 【Flask系列】开发一个简单的Flask程序

    知识点 初始化:每一个flask程序都必须创建一个程序实例,遵循WSGI(Web Server Gateway interface)协议,把请求->flask Obj; 创建实例: app = ...

  2. 一个简单的flask应用

    一个简单的flask应用,文件名hello.py from flask import Flask app = Flask(__name__) @app.route('/') def hello_wor ...

  3. 编写一个简单的C++程序

    编写一个简单的C++程序 每个C++程序都包含一个或多个函数(function),其中一个必须命名为main.操作系统通过调用main来运行C++程序.下面是一个非常简单的main函数,它什么也不干, ...

  4. 使用Go开发一个简单的服务器程序

    最近有个小项目,需要一个简单的后台程序来支撑,本来想用Nodejs来做,但是由于本人js一直很菜,并且很讨厌callback,虽然我也很喜欢异步模型,但我一直都觉得JS是反人类的.后台就用了go处理, ...

  5. 利用JSP编程技术实现一个简单的购物车程序

    实验二   JSP编程 一.实验目的1. 掌握JSP指令的使用方法:2. 掌握JSP动作的使用方法:3. 掌握JSP内置对象的使用方法:4. 掌握JavaBean的编程技术及使用方法:5. 掌握JSP ...

  6. 输出多行字符的一个简单JAVA小程序

    public class JAVA { public static void main(String[] args) { System.out.println("-------------- ...

  7. 如何创建一个简单的struts2程序

    如何创建一个简单的Struts2程序 “计应134(实验班) 凌豪” 1.创建一个新的Web项目test(File->new->Web Project) 2.Struts2框架的核心配置文 ...

  8. Linux系统学习笔记之 1 一个简单的shell程序

    不看笔记,长时间不用自己都忘了,还是得经常看看笔记啊. 一个简单的shell程序 shell结构 1.#!指定执行脚本的shell 2.#注释行 3.命令和控制结构 创建shell程序的步骤 第一步: ...

  9. 第一讲 一个简单的Qt程序分析

    本文概要:通过一个简单的Qt程序来介绍Qt程序编写的基本框架与一些Qt程序中常见的概念 #include <QApplication> #include <QPushButton&g ...

随机推荐

  1. Liferay门户网站portal

    转自:http://www.oschina.net/p/liferay+portal Liferay 是一个完整的门户解决方案,基于J2EE的应用,使用了EJB以及JMS等技术,前台界面部分使用Str ...

  2. Pascal's Triangle 解答

    Question Given numRows, generate the first numRows of Pascal's triangle. For example, given numRows  ...

  3. 使用sae定时执行Python脚本

    使用sae定时执行Python脚本 使用sae定时执行Python脚本 12,May,2014 | 57 Views 毕设压力略大,必须是桂林游的锅.去之前放松了几天,回来又休闲了几天,加上桂林的一周 ...

  4. ios sourecTree

    1, http://www.jianshu.com/p/be9f0484af9d 2, http://blog.csdn.net/viewcode/article/details/42291973  

  5. IOS 调用拨打电话Api

    // 判断设备是否有通话功能 NSString *deviceType = [UIDevice currentDevice].model; if([deviceType isEqualToString ...

  6. DNA Sorting(排序)

    欢迎参加——BestCoder周年纪念赛(高质量题目+多重奖励) DNA Sorting Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: ...

  7. C#静态构造函数和析构函数片段化认知

    一.静态构造函数 一个类可以有静态构造函数,实现如下源代码.静态构造函数有以下特性: 1).静态构造函数不能有修饰符(润饰符) 2).静态构造函数不能有参数 3).不能被调用——在实例化类的时候,静态 ...

  8. Android 属性动画(Property Animation) 全然解析 (下)

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/38092093 上一篇Android 属性动画(Property Animatio ...

  9. wpf实现IE菜单栏自动隐藏效果

    IE菜单栏默认为隐藏状态,按下键盘Alt键后显示,菜单失去焦点则自动隐藏.下面说说WPF中如何实现这样的效果. 第一步:Menu默认设置为隐藏(Visibility="Collapsed&q ...

  10. onvif规范 中文介绍

    什么是ONVIF ? ONVIF规范描述了网络视频的模型.接口.数据类型以及数据交互的模式.并复用了一些现有的标准,如WS系列标准等. ONVIF规范的目标是实现一个网络视频框架协议,使不同厂商所生产 ...