• Sanic九:Sanic.url_for和静态文件


    一、Sanic.url_for,支持的参数也是挺多,但是实际使用过程中,使用url_for一般只用于构建路由

    1、使 url_for 生成路由

    在Sanic中,可以使使用 url_for 根据终结点来生成路由,这样就不用关心改代码时路由有没有被改,只要函数名没被改就行

    使用时要记住的其他事项 url_for :

    1.1、传递给的关键字参数 url_for 非请求参数将包含在URL的查询字符串中。例如:
    app.url_for('post_handler', post_id=5, arg_one='one', arg_two='two') =》 /posts/5?arg_one=one&arg_two=two

    1.2、多值参数可以传递给 url_for . 例如:
    app.url_for('post_handler', post_id=5, arg_one=['one', 'two']) =》 /posts/5?arg_one=one&arg_one=two

    2、url_for也可以用来为静态文件生成url

    Sanic支持使用 url_for 方法来生成静态文件URL。如果静态url指向一个目录, filename 参数 url_for 可以忽略,以下是官网案例

    二:静态文件

    静态文件和目录(如图像文件)在注册到 app.static() 方法。该方法接受一个端点URL和一个文件名。然后,指定的文件将可以通过给定的端点访问。当提供静态目录时,Sanic不提供目录索引。

    2.1、虚拟主机

    app.static() 方法也支持 虚拟主机 . 您可以为静态文件提供特定的 虚拟主机 。例如

    2.2、流式处理大文件

    在某些情况下,可以使用Sanic服务器提供大文件(例如:视频、图像等)。可以选择使用 流文件 而不是直接下载。

    2.3、当stream_large_files 是 True ,Sanic将使用 file_stream() 而不是 file() 提供静态文件。这将使用 1KB 作为默认块大小。如果需要,还可以使用自定义块大小

    讨论群:249728408
  • 相关阅读:
    css 之 input 的提交样式
    JSON 没错又是它!!!
    json 对象解析 function 里面的return 和return false 查找字符串最后的结尾字符
    sql 中update 对字符串进行批量替换
    17 常用模块
    16 模块深入
    15 模块
    14 生成器,生成器表达式,内置函数,面向过程编程
    13 迭代器
    12 递归 三元表达式 列表生成式 字典生成式 匿名函数
  • 原文地址:https://www.cnblogs.com/zhongyehai/p/15110677.html
Copyright © 2020-2023  润新知