使用Twisted静态Web服务器共享python资源文件

时间:2018-10-18 14:08:46

标签: python twisted

有人能建议与Twisted网络服务器共享Python包资源文件的最佳方法吗?

使用setuptools构建的软件包。

from pkg_resources import resource_listdir

from twisted.web.server import Site
from twisted.web.static import File
from twisted.internet import reactor

resource = File('/blah') # !! Wanna ask File use resource_listdir
factory = Site(resource)
reactor.listenTCP(8888, factory)
reactor.run()    

1 个答案:

答案 0 :(得分:1)

您可以覆盖listNames上的File来控制目录列表。

例如,

packageName = "..."

class PkgResourcesFile(File):
    def listNames(self):
        return resource_listdir(packageName, self.path)

resource = PkgResourcesFile(...)