PythonWeb|Flask框架入门
前言
最近看网上说web使用python开发的也挺多的了,并且使用python开发web好像相比javaweb更简单一些,然后最近就想学习对比一下。最开始从挑选学习的框架像Flask、Django、Tornado等等里选了Flask,因为Flask和Django使用的是比较多的,并且入门也比较快,Flask和Django的区别就是一个没有集成扩展,一个集成了所有的扩展,于是选择了没有扩展的Flask,之后需要什么扩展直接下载就可以。
目录
1.第一个flask程序
2.路由
3.路由参数
过程
1.第一个flask程序
#1.导入Flask相关包from flask import Flask#2.创建Flask应用程序实例app = Flask(__name__)#3.定义路由及视图函数@app.route('/')def hello_world():return 'Hello!Flask!'#4.启动程序app.run()
实现效果
2.路由
路由简单来说就是根据url分配到对应的程序中处理。比如说
example.com/login
example.com/register
去不同的路由中做不同的事情。
from flask import Flask
app = Flask(__name__)#更改路由为index@app.route('/index')def hello_world():return 'nihao'
然后去访问根目录
会报404
之后改为设置好的路由/index
这个地方再添加一下如何设置POST或者GET请求,路由默认是GET请求。当我们使用GET请求的时候会正常得到nihao
如果使用POST的话
就会 报405 请求方法不允许错误。
当我们把路由中加入请求方法的时候
#更改路由@app.route('/index',methods=['GET','POST'])
成功通过POST获取到nihao
当时methods不仅仅只有GET、POST也是可以根据自己的需求加入PUT、PATCH、DELETE等
3.路由参数
本部分就是介绍如何将后端的参数传递到前端中,比如说向前端传递不同的电话号码。
格式
from flask import Flask
app = Flask(__name__)###<>定义路由参数,<>内需要起一个名字@app.route('/phone/')def get_phone_num(phone_num):##需要在视图函数的()内填入参数名,后面的代码才能够使用print(type(phone_num))return 'phone_num is %s' % phone_num
app.run(debug=True)
在链接后边加入123456就可以在页面中显示
总结
本文是第一篇Flask的第一篇,主要介绍了第一个flask简单程序、路由和路由参数。下节介绍向模板中传递参数以及拦截器和表单以及flash消息闪现内容。经过这几天的学习入门发现了pythonweb和javaweb确实可能是有那么一点区别,比如说javaweb在提交表单的时候会通过servlet请求处理,而pythonweb是直接定义路由并且写相应的函数,感觉两者区别和相似点应该会挺多的,那就等之后深入学习后再去慢慢总结。