我将一个简单的工具集从python 2.7迁移到3.5,其中一个工具是使用web.py的简单Web服务器。
不幸的是,web.py还没有用于3.5,所以我为了这个而切换到了bottle.py.
根据我创建的界面的规范,我需要通过添加以下行来关闭我可以在web.py中轻松完成的连接:
web.header('Connection', 'close')
但是使用瓶子我得到的错误是,当我执行以下操作时,不允许逐跳标头:
response.add_header('Connection', 'close')
如何将此标题添加到响应中?我已经阅读了瓶子文档,在线搜索并查看了瓶子代码。
答案 0 :(得分:2)
我不确定如此接受我写的东西。
瓶子开发服务器是一个轻微修改的wsgiref服务器,它是一个经过修改的http.server服务器。它没有简单的方法或配置来发送“异常”标题。您可以将其子类化并编写一些自定义代码。我认为应该足以覆盖send_head方法(here)并在某处包含self.send_header("Connection", "close")
。
你可以使用任何你喜欢的wsgi服务器。它有相当一部分服务器的内置支持,但任何wsgi服务器都应该能够为应用程序提供服务。也许有一种更简单的方法可以让其他服务器发送自定义标头。
http.server也不适合制作,所以即使你可以让你的标题工作,你也可能想要改变它。如果它仅供内部使用,您可能会使用它。