Flask中的URL路径有何不同?

时间:2018-01-13 22:18:39

标签: flask flask-restful

网址路径之间有什么区别:

@app.route('/projects')

@app.route('/projects/')

路径路径末尾的含义slash是什么意思?在女巫的情况下使用它?

如果我理解正确,它用于服务器文件的绝对和相对路径?正确?

1 个答案:

答案 0 :(得分:1)

这称为trailing slash

对于一般trailing slash

  1. https://www.google.com/example/ - >这是一个目录。

    • Firtst,Server检查目录是否存在。
    • 其次,如果存在,服务器会检查默认文件,例如index.html
  2. https://www.google.com/example - >这是一个档案。

    • Firtst,Server检查文件是否存在。
    • 其次,如果没有,请检查具有该名称的目录。
  3. 因此,如果在请求目录资源时指定尾部斜杠,则页面响应速度会有小幅提升,因为您可以跳过文件检查。

    在Flask中

    1. <强> @app.route('/projects')

      • 致电/projects/ - &gt;返回404.
        (Werkzeug将其解释为明确的规则,因此它与尾随斜线不匹配。)
      • 致电/projects - &gt;返回200
    2. <强> @app.route('/projects/')

      • 致电/projects/ - &gt;返回200
      • 致电/projects - &gt;返回302
        (如果网址没有,Werkzeug将重定向)
    3. This article会有所帮助。