gpt4 book ai didi

url - url路径与用斜杠关闭的路径有明显区别吗?

转载 作者:行者123 更新时间:2023-12-04 02:38:33 24 4
gpt4 key购买 nike

我遇到的标题问题是当我使用 tornado 运行一个 hello-world 示例时像这样:

import tornado.httpserver
import tornado.ioloop
import tornado.options
import tornado.web

from tornado.options import define, options
define("port", default=9999, help="run on the given port", type=int)

class IndexHandler(tornado.web.RequestHandler):
def get(self):
greeting = self.get_argument('greeting', 'Hello')
self.write(greeting + ', friendly user!')

if __name__ == "__main__":
tornado.options.parse_command_line()
app = tornado.web.Application(handlers=[(r"/hello", IndexHandler)])
http_server = tornado.httpserver.HTTPServer(app)
http_server.listen(options.port)
tornado.ioloop.IOLoop.instance().start()

然后我运行了这段代码并运行了如下命令: curl http://localhost:9999/hello ,它获得了 200 个 HTTP 状态。

但是当我运行用斜杠关闭路径的命令时: curl http://localhost:9999/hello/ ,它获得了 404 HTTP 状态。

我知道代码中的问题可能是这一行:

app =  tornado.web.Application(handlers=[(r"/hello", IndexHandler)])

所以我想知道是否有一种简单的方法可以用 http://localhost:9999/hello 修复它和 http://localhost:9999/hello/均已访问。

而且我也很想了解 url 路径与是否用斜杠 (/) 闭合的路径的区别,如上面的 http://localhost:9999/hellohttp://localhost:9999/hello/或者有时当我们 put文件。

最佳答案

  • 路由路径是一个正则表达式,因此您可以将其设置为 r'/hello/?',它将接受尾部斜杠和无斜杠。
  • 关于 URL 样式,还有一个关于 SO 的问题,我只是通过搜索找到的,按投票排序:When should I use a trailing slash in my URL?

关于url - url路径与用斜杠关闭的路径有明显区别吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20399751/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com