这将在“静态”处提供“tmp”的内容:
from twisted.web.static import File
resource = File("/tmp")
root = Resource()
root.putChild("static", resource)
如何以静态方式提供 /tmp 和 /tmp2 的内容?
我会写一个小Resource
程序来调度子Resources
(Files
对于每个目录)。这是一些说明这个想法的伪代码:
class MyResource(Resource):
def __init__(self, dir_a, dir_b):
self.a = File(dir_a)
self.b = File(dir_b)
def render_GET(self, request):
if request.path handled by self.a:
return self.a.render_GET(request)
elif request.path handled by self.b:
return self.b.render_GET(request)
else:
return 404 not found request
root.putChild("static", MyResource('/tmpa', '/tmpb'))
要执行request.path handled by self.X
,看File.getChild
。您可能需要做一些路径调整(也许不需要)。