1

我了解浏览器向 bin/app.py 应用程序发出 HTTP 请求并要求输入 / URL,这通常是任何网站上的第一个 URL。

在 bin/app.py 我有一个 URL 列表以及它们匹配的类。

我唯一拥有的是“/”和“索引”映射。Learn Python the Hard Way中给出了:

这意味着每当有人使用浏览器访问 / 时,lpthw.web 都会找到类索引并加载它以处理请求。

我现在在 app.py 中有以下代码。

import web
urls = ('/','index')
app = web.application(urls,globals())

class whatever:
    def GET(self):
        a = "Hello World!"
        return a
if __name__ == "__main__":
app.run()

在上面的代码中,我将类命名为“whatever”。即便如此,当我转到 localhost 页面时,浏览器仍显示“Hello World!”

为什么会这样?即使我将其中一个 url 从“index”重命名为其他名称,代码仍然有效。我错过了什么?

4

1 回答 1

1

默认情况下,每次代码更改后都需要重新启动服务器。但是,有一种解决方法。来自web.py 教程

...在最后一行添加 web.reloader 使其显示为:

if __name__ == "__main__": web.run(urls, globals(), web.reloader)

这告诉 web.py 使用 web.reloader “中间件”(中间件是一个包装函数,用于向您的网络服务器添加一些功能),它会在您编辑文件时重新加载文件,以便您可以在网络浏览器中看到更改离开。(不过,对于一些严重的更改,您仍然必须重新启动服务器。)当您公开您的网站时,您可能希望将其删除,但在开发时它很棒

于 2013-07-16T17:52:18.273 回答