【发布时间】:2010-12-12 05:10:37
【问题描述】:
BaseHTTPServer 和 SimpleHTTPServer 有什么区别?
我应该在何时何地使用这些?
【问题讨论】:
标签: python http simplehttpserver basehttpserver
BaseHTTPServer 和 SimpleHTTPServer 有什么区别?
我应该在何时何地使用这些?
【问题讨论】:
标签: python http simplehttpserver basehttpserver
BaseHTTPServer 是一个 HTTP 服务器库。它理解 HTTP 协议并让您的代码处理请求。它本身没有任何“逻辑”。 SimpleHTTPServer 建立在 BaseHTTPServer 之上,并以与普通 HTTP 服务器类似的方式处理请求,即从文件系统提供文件。在大多数情况下,您只需要 BaseHTTPServer,作为实现 Web 应用程序开发服务器的基础。
如果您对开发 Web 应用程序而不是编写 HTTP 服务器感兴趣,您可能正在寻找WSGI 接口。它允许您在不依赖特定服务器的情况下编写 Web 应用程序。还有多个框架可以简化流程。
【讨论】:
wsgi.simple_server 中有基于BaseHTTPServer 的WSGI 服务器。但是 WSGI 的优点是你可以使用任何你想要的 WSGI 服务器。例如,您可以使用来自 CherryPy 甚至 Twisted 的 WSGI 服务器,而无需编写 CherryPy 或 Twisted 特定代码。