我理解浏览器向bin / app.py应用程序发出HTTP请求并要求提供/ URL,这通常是任何网站上的第一个URL。
在bin / app.py中我有一个URL列表以及它们匹配的类。
我唯一拥有的是'/'和'index'映射。它是在学习Python艰难的方式中给出的:
这意味着每当有人访问浏览器时,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”重命名为其他内容,代码仍可正常工作。我错过了什么?
答案 0 :(得分:1)
默认情况下,每次更改代码后都需要重新启动服务器。但是,有一种解决方法。来自the web.py tutorial:
...在最后一行添加web.reloader,使其显示为:
if __name__ == "__main__": web.run(urls, globals(), web.reloader)
这告诉web.py使用web.reloader“中间件”(中间件是一个包装函数来为您的Web服务器添加一些功能),只要您编辑它们就会重新加载文件,这样您就可以看到更改了网页浏览器马上。 (但是,对于一些严重的更改,您仍然需要重新启动服务器。)当您将网站公开时,您可能想要解决这个问题,但是在开发时它很棒