python框架-flask-03路径与函数的映射

一:运行报错

  OSError: [Errno 98] Address already in use:5000端口可能被占

  

  lsof -i:端口号  查看端口被那个进程使用,结果是python3.5

  kill PID 杀死这个进行,运行程序,flaks框架正常运行

  

from flask import Flask

app = Flask(__name__)


@app.route("/")
def aa():
    return "index page"


@app.route("/login")  # 路径与视图函数的映射,通过路径匹配指定的视图函数
def login():
    return "login page"


@app.route("/register")
def register():
    return "register page"
if __name__ == "__main__":
   print(app.url_map) app.run()

app.url_map:路径与视图函数的映射

Map([<Rule '/register' (GET, HEAD, OPTIONS) -> register>,
 <Rule '/login' (GET, HEAD, OPTIONS) -> login>,
 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
 <Rule '/' (GET, HEAD, OPTIONS) -> aa>,
 <Rule '/static/<filename>' (GET, HEAD, OPTIONS) -> static>])

浏览器中输入127.0.0.1:5000/register---> 框架会直接找到对应的 register函数--->将返回值显示到页面上。

二:WEB应用程序中的角色

  1.浏览器角色:就是发送http请求

浏览器发送请求的方式有:

1. 输入框输入网址
2. 点击a标签的 href 
3. script 的 src
4. img的 src
5. link href
6. form 表单的 submit
7. Ajax请求

  2.服务器角色:接收数据、发送数据

1.接收浏览器发送的请求,在这个请求中得到,请求行,请求头,请求体

2.向浏览器发送相关的数据

    响应行、响应头、响应体

接收数据、发送数据的功能

  3.flask框架的角色:处理网站的业务逻辑

  4.数据库的角色:存储数据

三:flask框架内部自己集成了一个服务器

  服务器的效率比较低:用于进行简单的数据访问。但是有了这个服务器,才能将视图函数return的东西,通过服务器,进行响应行,响应头,响应体的拼接,response给浏览器,浏览器进行展示。

  flask服务器遵守的是wsgi协议,因为可以用高性能的遵循wsgi协议的服务器进行替代,满足线程的访问。

猜你喜欢

转载自www.cnblogs.com/meloncodezhang/p/11701317.html