一个简单的flask应用,文件名hello.py

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello World!'

if __name__ == '__main__':
    app.run()
1.引入Flask类,Flask类实现了一个WSGI应用;2.app是Flask的实例,它接收包或者模块的名字作为参数,但一般都是传递__name__;3.app.route装饰器会将URL和执行视图函数的关系保存到app.url_map属性上;4.内置变量__name__判断表示import该模块不会执行(__name__执行该程序时候为__main__,import时候为模块文件名),执行app.run就可以启动服务了,默认Flask只监听虚拟机的本地127.0.0.1这个地址,端口为5000。

ps:1.调试模式

  虽然 run() 方法适用于启动本地的开发服务器。如果你启用了调试支持,服务器会在代码修改后自动重新载入,并在发生错误时提供一个相当有用的调试器。有两种途径来启用调试模式。

一种是直接在应用对象上设置:

app.debug = True

app.run()

另一种是作为 run 方法的一个参数传入:

app.run(debug=True)

    2.路由

  route()装饰器把一个视图函数绑定到一个URL上,也可以构造动态的URL或者一个路由上面绑定多个URL。

 2.1.变量规则

在给URL绑定动态变量时,动态的字段以<variable_name>,这部分作为命名参数部分传递到函数。规则可以用 <converter:variable_name> 指定一个可选的转换器。

app.route('app/<username>')
def show_user_info(username):
    return "User %s" % username #User对象
app.route('app/<int:userid>'):
    return "User %s" % userid

  转换器有下面几种:

  int 接受整数

  float 同int,但是接受浮点数

   path和默认的相似,但是接受斜线

2.2.唯一 URL / 重定向行为

  Flask 的 URL 规则基于 Werkzeug 的路由模块。这个模块背后的思想是基于 Apache 以及更早的 HTTP 服务器主张的先例,保证优雅且唯一的 URL。

2.3 构造 URL

  url_for() 来给指定的函数构造 URL。它接受函数名作为第一个参数,也接受对应 URL 规则的变量部分的命名参数。未知变量部分会添加到 URL 末尾作为查询参数。

   2.4http方法

app.route("app/index",methods=['GET','POST'])
def login():
    if request.method=='POST':
        login()
    else:
        show_login_error()

  默认情况下,路由只回应 GET 请求,但是通过 route() 装饰器传递 methods 参数可以改变这个行为。GET:浏览器告知服务器:只 获取 页面上的信息并发给我。这是最常用的方法。POST:浏览器告诉服务器:想在 URL 上 发布 新信息。并且,服务器必须确保 数据已存储且仅存储一次。这是 HTML 表单通常发送数据到服务器的方法。

一个简单的flask应用的更多相关文章

  1. 一个简单的flask程序

    初始化 所有Flask程序都必须创建一个程序实例. 程序实例是Flask类的对象,经常使用下述代码创建: from flask import Flask app = Flask(__name__) F ...

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

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

  3. 编写一个简单的flask的前后端交互的网页(flask简单知识的讲解)

    实验原理: 1.什么是flask Flask是一个使用Python编写的轻量级Web应用框架,其WSGI工具采用Werkzeng,模板引擎使用Jinja2.Flask与 Django之间的区别就是Dj ...

  4. Python框架学习之用Flask创建一个简单项目

    在前面一篇讲了如何创建一个虚拟环境,今天这一篇就来说说如何创建一个简单的Flask项目.关于Flask的具体介绍就不详细叙述了,我们只要知道它非常简洁.灵活和扩展性强就够了.它不像Django那样集成 ...

  5. Flask学习之旅--用 Python + Flask 制作一个简单的验证码系统

    一.写在前面 现在无论大大小小的网站,基本上都会使用验证码,登录的时候要验证,下载的时候要验证,而使用的验证码也从那些简简单单的字符图形验证码“进化”成了需要进行图文识别的验证码.需要拖动滑块的滑动验 ...

  6. 用flask写一个简单的接口

    用falsk写一个简单的接口,这个接口的数据本来是爬虫爬取的数据,但是今天只写一个flask接口,数据就用测试数据好了. import random import re import time imp ...

  7. 一个简单的mock server

    在前后端分离的项目中, 前端无需等后端接口提供了才调试, 后端无需等第三方接口提供了才调试, 基于“契约”,可以通过mock server实现调试, 下面是一个简单的mock server,通过pyt ...

  8. web 框架的本质及自定义web框架 模板渲染jinja2 mvc 和 mtv框架 Django框架的下载安装 基于Django实现的一个简单示例

    Django基础一之web框架的本质 本节目录 一 web框架的本质及自定义web框架 二 模板渲染JinJa2 三 MVC和MTV框架 四 Django的下载安装 五 基于Django实现的一个简单 ...

  9. Docker容器技术-创建一个简单的Web应用

    一.创建一个简单的Web应用 1.identicon 基于某个值而自动产生的图像,这个值是IP地址或用户名的散列值. 用途: 通过计算用户名或IP地址的散列值,在网站上提供用于识别用户的图像,以及自动 ...

随机推荐

  1. 滚动锁定 scroll lock 键有什么用?

    滚动锁定 scroll lock 键有什么用? 中文名称:滚动锁定键  按下此键后在Excel等按上.下键滚动时,会锁定光标而滚动页面:如果放开此键,则按上.下键时会滚动光标而不滚动页面.      ...

  2. 学习EF之CodeFirst二(数据库对应映射)

    在上一篇文章我们简单通过一个实例完成对CodeFirst的理解,我们通过实体生成数据库里的表和字段,虽然有一些默认的配置生成规定,但其实我们可以能过对实体进一步控制从而对生成的表字段进行更加符合我们要 ...

  3. Jenkins高速上手

    http://www.cnblogs.com/puresoul/p/4813551.html .Jenkins下载安装 1.到官网下载jenkins.war包:http://jenkins-ci.or ...

  4. 反射机制2,Class类的使用

    class是反射源头,不光可以取得对象所在类信息,也可直接通过class类的方法进行对象的实例化操作. 使用关键字new为对象实例化.如果已经实例化好了class对象,就可以通过class类中提供的n ...

  5. Apache OFBiz 添加样式

    1.打开themes文件夹,拷贝一份样式作为自己的样式更改初始样式,我这里拷贝的是flatgrey文件夹,重新命名为qlstyle     2.在文件/ofbiz/framework/common/c ...

  6. IOS炫酷的引导界面

    代码地址如下:http://www.demodashi.com/demo/11246.html 一.准备工作 1.先用时ps工具制作好图片 2.然后计算好每张图片通过滑动视图的偏移量来改变图片的位置 ...

  7. JS JSOP跨域请求实例详解

    JSONP(JSON with Padding)是JSON的一种“使用模式”,可用于解决主流浏览器的跨域数据访问的问题.这篇文章主要介绍了JS JSOP跨域请求实例详解的相关资料,需要的朋友可以参考下 ...

  8. UIPopoverController具体解释

    今天一位童鞋问我个问题.大意是popoverController不会显示.经过我寻找问题发现以下这种方法不好掌控. 为什么说他不好掌控那.我这个给大家带来一个列子.通过这个列子来介绍PopoverCo ...

  9. php面象对象魔术方法的使用

    class Moshu{ public $number; public function __construct($str)//构造方法,new实例时,自动调用 { //require('/confi ...

  10. unity文件写入与读取

    using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEditor; us ...