使用Flask构建一个Web应用

Flask是一个使用Python编写的轻量级Web应用框架。

一、安装Flask

以管理员身份,打开命令提示符窗口,输入下面命令

py -3 -m pip install flask

这个命令会连接到PyPI网站下载和安装Flask模块,以及Flask依赖的几个模块:Werkzeug、MarkupSafe、Jinja2、itsdangerous、click。
安装完成后,在命令提示符窗口最后部分可以看到:

Installing collected packages: Werkzeug, MarkupSafe, Jinja2, itsdangerous, click, flask
Successfully installed Jinja2-2.10.1 MarkupSafe-1.1.1 Werkzeug-0.15.4 click-7.0 flask-1.0.3 itsdangerous-1.1.0

二、创建一个hello world的最小Web应用

1、创建一个hello.py,内容如下

#导入flask模块的Flask类
from flask import Flask

#__name__为当前活动模块的名称
app = Flask(__name__) 

#设置路由
@app.route(‘/‘)
def hello() -> str:
     return ‘Hello World!‘

"""run()有3个可选参数
host 主机,默认为127.0.0.1
port 端口号,默认5000
debug 是否开启调试模式,默认为False,如设为True则修改代码会自动重启
"""
app.run() 

在命令提示符窗口中定位到hello.py所在目录,并执行命令py -3 hello.py

D:\projects\python>py -3 hello.py
 * Serving Flask app "hello" (lazy loading)
 * Environment: production
   WARNING: This is a development server. Do not use it in a production deployment.
   Use a production WSGI server instead.
 * Debug mode: off
 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

表示已经启动了一个Web应用,调试模式未开启,地址为http://127.0.0.1:5000,按CTRL+C可以退出Web应用。

3、在浏览器输入http://127.0.0.1:5000
可看到浏览器显示Hello World!
同时在刚才命令提示符窗口可看到
127.0.0.1 - - [23/Jun/2019 09:31:55] "GET / HTTP/1.1" 200 -

三、路由配置

在URL和函数之间建立联系的操作被称之为路由。
路由支持动态名称,规则如下:

1.<id> :默认接受的类型是str
2.<string:id> :指定id的类型为str,不能包含路径分隔符/
3.<int:id> :指定的id类型是整数
4.<float:id> : 指定id的类型为浮点数(四舍五入,且不能接收整数类型)
5.<path:path1> : 指定接收的path为任何非空字符串,可包含路径分隔符/

使用例子:

from flask import Flask

app = Flask(__name__) 

@app.route(‘/getStr/<id>‘)
def getStr(id) -> str:
     """匹配str类型的id值,如/getStr/1 """
     return ‘id: %s‘ %id

@app.route(‘/getInt/<int:id>‘)
def getInt(id) -> str:
     """匹配int类型的id值,如/getInt/1 """
     return ‘id: %d‘ %id

@app.route(‘/getFloat/<float:id>‘)
def getFloat(id) -> str:
     """匹配float类型的id值,如/getFloat/1.053 """
     return ‘id: %.2f‘ %id

@app.route(‘/getPath/<path:path>‘)
def getPath(path) -> str:
     """匹配非空字符,一般匹配url路径值,如/getPath/test/1 """
     return ‘path: %s‘ %path

app.run(debug = True) 

原文地址:https://www.cnblogs.com/gdjlc/p/11072118.html

时间: 2024-11-05 13:38:08

使用Flask构建一个Web应用的相关文章

flask 创建一个web

创建一个web pip install flask from flask import Flask app=Flask(__name__) @app.route('/') def index(): return 'hello' 运行 flask run 原文地址:https://www.cnblogs.com/buchizaodian/p/11142154.html

jmeter 构建一个Web测试计划

添加用户 第一步你想做的每一个JMeter测试计划是添加一个 线程组 元素. 线程组告诉 JMeter的用户数量你想模拟,用户应该发送的次数 请求,请求他们应该送多少. 继续添加ThreadGroup元素首先选择测试计划, 点击你的鼠标右键添加菜单,然后选择 添加一个??ThreadGroup. 您现在应该看到测试计划下的线程组元素. 如果你不 看到的元素,那么“扩大”点击测试计划树 测试计划的元素. 接下来,您需要修改默认属性. 选择线程组元素 在树上,如果您还没有选择它. 您现在应该看到线程

【springboot】之快速构建一个web项目

基于maven,首先看pom文件 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.4.0.RELEASE</version> </parent> <dependencies> <!-- springboot启动

从零构建一个简单的 Python Web框架

为什么你想要自己构建一个 web 框架呢?我想,原因有以下几点: 你有一个新奇的想法,觉得将会取代其他的框架 你想要获得一些名气 你遇到的问题很独特,以至于现有的框架不太合适 你对 web 框架是如何工作的很感兴趣,因为你想要成为一位更好的 web 开发者. 接下来的笔墨将着重于最后一点.这篇文章旨在通过对设计和实现过程一步一步的阐述告诉读者,我在完成一个小型的服务器和框架之后学到了什么.你可以在这个代码仓库中找到这个项目的完整代码. 我希望这篇文章可以鼓励更多的人来尝试,因为这确实很有趣.它让

用Spring构建一个RESTful Web Service

本教程将手把手教你用Spring构建一个"hello world" RESTful Web Service. 你将构建什么 你将构建一个Web Service,用于接收HTTP GET请求,请求地址: http://localhost:8080/greeting 请求响应返回一段JSON格式的问候语: {"id":1,"content":"Hello, World!"} 你可以在请求中添加一个可选参数:name,定制问候语:

在ASP.NET Core MVC中构建简单 Web Api

Getting Started 在 ASP.NET Core MVC 框架中,ASP.NET 团队为我们提供了一整套的用于构建一个 Web 中的各种部分所需的套件,那么有些时候我们只需要做一个简单的 Web Api 程序怎么办呢? 在 GitHub 中的 ASP.NET Core MVC 源码里面,我们只要关注 Microsoft.AspNetCore.Mvc 这个包,那么除了这个包之外它还包含这些: Microsoft.AspNetCore.Mvc.ApiExplorer Microsoft.

构建现代Web应用时究竟是选择传统web应用还是SPA

在大前端盛行的今天,似乎前后端分离的开发模式才是大势所趋,而SPA的概念更是应运而生.现在随便构建一个web应用程序如果你不是使用SPA的话,就会感觉有点low,但是真的是这样吗?今天这篇文章我们就来一起探讨下,构建现代web应用时该如何进行选择. 目前大伙都知道的是可通过两种通用方法来构建 Web 应用程序:在服务器上执行大部分应用程序逻辑的传统 Web 应用程序,以及在 Web 浏览器中执行大部分用户界面逻辑的单页应用程序 (SPA),后者主要使用 Web API 与 Web 服务器通信.

为您的Web项目构建一个简单的JSON控制器

摘要:无论您的项目使用的是哪种数据库后端,JavaScript Object Notation (JSON) 控制器都能简化您的开发工作.本文将带领您建立一个能够增强您的下一个开发项目的非常基础的 JSON 控制器. 您的下一个 PHP/MySQL 项目可能与您最近完成的十几个项目类似:建立一个 MySQL 数据库,创建包含 HTML 的 PHP 视图,根据需要添加 JavaScript 代码和 CSS 文件,连接到数据库,从数据库提取内容来填充视图,等等.如果您熟悉 web 开发,您一定知道分

一步一步用jenkins,ansible,supervisor打造一个web构建发布系统

新blog地址:http://hengyunabc.github.io/deploy-system-build-with-jenkins-ansible-supervisor/ 一步一步用jenkins,ansible,supervisor打造一个web构建发布系统. 本来应该还有gitlab这一环节的,但是感觉加上,内容会增加很多.所以直接用github上的spring-mvc-showcase项目来做演示. https://github.com/spring-projects/spring-