2016-11-15 13 views
0

我想为我的Python Web项目使用Bottle框架。我只是这方面的初学者。所以,首先我想了解它是如何工作的。瓶子里的哪个功能提供无限的等待请求?

简单的应用程序是这样的:

from bottle import route, run 

@route('/hello') 
def hello(): 
    return "Hello World" 

run(host='localhost', port=5000, debug=True) 

我发现run功能bottle.py,但我不明白的地方是代码期望从浏览器请求的块。也许我不明白什么。这就是为什么你可以向我解释这个机会主义的基本问题。

+2

'bottle'不能做任何请求_from_浏览器。这是一个_server_。它回答了浏览器的要求。只有_client-side_软件可以从浏览器发送请求',但'bottle'本身就是服务器,它只是尽力将数据发送到浏览器,就是这样。 – ForceBru

+0

你究竟想要什么?请提供更多信息。您以代码语法形式提供的信息更令人困惑。一些解释将有帮助 –

回答

0

HTTP基于请求 - 响应。 请求 - >浏览器,响应 - >服务器(服务器在你的情况下是瓶子)。 一旦服务器响应客户端(浏览器),浏览器的通信就结束。这是常规的HTTP方式。 如果你想保持浏览器和服务器之间的连续连接,例如为浏览器提供实时更新(浏览器不需要更新,服务器将它们发送到浏览器)这将是Websockets。

这里是对瓶的WebSockets的文档: https://bottlepy.org/docs/dev/async.html#finally-websockets

+0

好的,谢谢。我不想保持连续的连接。我只想在** bottle.py **中找到一个可以与浏览器进行单一通信的功能。我想要说明服务器如何响应来自浏览器的请求,如果连接不连续。 – Ilya

+0

当您运行bootle时,将启动一个开发服务器。运行(host ='localhost',port = 5000,debug = True)。这将在端口5000上启动一个本地开发服务器。当您在浏览器的地址栏中键入localhost:5000时,可以访问它。当你去到url localhost:5000/hello时,服务器的hello函数将被浏览器调用,并且服务器响应请求。 – matyas