zoukankan      html  css  js  c++  java
  • 基于Flask框架搭建视频网站的学习日志(二)

    基于Flask框架搭建视频网站的学习日志(二)2020/02/02

    一、初始化

    所有的Flask程序都必须创建一个程序实例,程序实例是Flask类的对象

    from flask import Flask
    app = Flask(__name__)
    

    Flask 类的构造函数Flask()只有一个必须指定的参数,即程序主模块或包的名字。在大多数程序中,python的__name__变量就是所需的值。(Flask这个参数决定程序的根目录,以便稍后能够找到相对与程序根目录的资源文件位置)——《Flask Web开发》

    二、路由和视图函数

    1.路由:

    个人对路由的理解:程序实例需要知道每个URL请求运行那些代码,用route()修饰器把函数绑定到URL上

    2.视图函数:

    返回的响应可以是字符串或者复杂的表单

    三、动态路由

    变量规则 Flask中文文档(https://dormousehole.readthedocs.io/en/latest/quickstart.html)

    通过把 URL 的一部分标记为<variable_name> 就可以在 URL 中添加变量。标记的 部分会作为关键字参数传递给函数。通过使用 <converter:variable_name>,可以 选择性的加上一个转换器,为变量指定规则。请看下面的例子:

    @app.route('/user/<username>')
    def show_user_profile(username):
        # show the user profile for that user
        return 'User %s' % escape(username)
    
    @app.route('/post/<int:post_id>')
    def show_post(post_id):
        # show the post with the given id, the id is an integer
        return 'Post %d' % post_id
    
    @app.route('/path/<path:subpath>')
    def show_subpath(subpath):
        # show the subpath after /path/
        return 'Subpath %s' % escape(subpath)
    

    转换器类型:

    string (缺省值) 接受任何不包含斜杠的文本
    int 接受正整数
    float 接受正浮点数
    path 类似 string ,但可以包含斜杠(与string区分)
    uuid 接受 UUID 字符串

    ! 注意:<converter:variable_name>中间不能有空格,格式要一致

    四、启动服务器

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

    1.服务器启动以后会进入轮询,等待并处理请求(轮询是用来解决服务器压力过大的问题的。如果保持多个长连接,服务器压力会过大,因此。专门建立一个轮询请求的接口,里面只保留一个任务id,只需要发送任务id,就可以获取当前任务的情况。如果返回了结果,轮询结束,没有返回则等待一会儿,继续发送请求。 )

    2.把debug参数设置为True,启用调试模式

    3.在浏览器上输入网址,如果是生成的初始网址,并且URL带了变量,这时先会返回错误,因为生成的初始网址里面没有变量,例如应该加上/user/44654。其中的<>也要去掉

  • 相关阅读:
    Web前端浏览器兼容性问题及解决方案
    JS
    vue element-ui 重置样式问题
    学习的一些文章链接
    打开新世界的第一步:学习servlet
    java学习初体验之课后习题
    下载、安装jdk8(Windows下)并配置变量环境
    下载PhpStorm并进行激活
    WCF+NHibernate 序列化
    wcf 证书+ssl+自定义用户名密码
  • 原文地址:https://www.cnblogs.com/fragrant-breeze/p/12258080.html
Copyright © 2011-2022 走看看