【问题标题】:Hosting static file for Download Python Tornado托管用于下载 Python Tornado 的静态文件
【发布时间】:2013-07-13 19:51:26
【问题描述】:

嘿,我正在努力在我的服务器上使用 Python 和 Tornado 下载静态文件。

class templateHandler(tornado.web.RequestHandler):
def get(self):
    self.write("""
    <a href="/download"> Download </a>
    """)

application = tornado.web.Application([
(r"/", MyFormHandler),
(r"/results", MyFormHandler),
(r"/multi", MyFileHandler),
(r"/upload",MyFileHandler),
(r'/download',tornado.web.StaticFileHandler,{'path':"L:/Template.csv"}),
(r'/template', templateHandler),
(r"/SFA",SFAHandler),
])

谁能帮帮我。我不是 100% 确定文件处理程序是如何工作的。 感谢您的帮助!

编辑: 这是错误消息:

ERROR:root:Uncaught exception GET /download (10.18.4.160)
HTTPRequest(protocol='http', host='IPadress', method='GET', uri='/download', version='HTTP/1.1', remote_ip='IPaddress', body='', headers={'Connection': 'keep-alive', 'Accept-Language': 'en-US,en;q=0.5', 'Accept-Encoding': 'gzip, deflate', >'Referer': 'IPadress/template', 'Host': 'IPaddress', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'User-Agent': 'Mozilla/5.0 (Windows NT 5.1; rv:17.0) Gecko/20100101 Firefox/17.0'})
Traceback (most recent call last):
  File "WEB.PY LOCATION", line >988, in _execute
    getattr(self, self.request.method.lower())(*args, **kwargs)
TypeError: get() takes at least 2 arguments (1 given)
ERROR:root:500 GET /download (IPaddress) 0.00ms

【问题讨论】:

  • 现在发生了什么?当你在浏览器中访问/download 时?
  • 抱歉忘记包含错误信息。编辑了一些 IP 和 web.py 位置。抱歉,它是一种糟糕的格式,除了块格式之外不知道如何做。再次感谢。

标签: python upload tornado web.py staticfilehandler


【解决方案1】:

我认为它与 StaticFileHandler.get 期望路径有关,通常它不提供单个文件,而是提供文件目录,并采用我没有时间深入研究的文件名现在,但它应该类似于

(r'/download/(.*)',tornado.web.StaticFileHandler,{'path':"L:/"}),

现在如果你去

/download/Template.csv 它应该为它服务。抱歉,我现在没有时间查看来源确认

【讨论】:

  • WARNING:root:403 GET /download/Template.csv (127.0.0.1): \Template.csv 不在根静态目录 WARNING:root:403 GET /download/Template.csv (127.0 .0.1) 16.00ms >它给了我一个 403 禁止错误
  • 太棒了!您的L:/ 权限是什么?正在运行的用户tornado 是否具有来自L:/ 的读取权限?
  • 我想我在这种情况下找到了问题我认为我的 python 发行版安装在不同的驱动器上......明天将修复和更新。谢谢!
  • 好的,仍在尝试修复它,但我不确定该模板应该放在哪里,所以它所在的目录被授予读取权限。
  • @NickTrileski 只是为了测试你能从你的 python 项目的子目录中提供文件吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-27
  • 2012-01-30
  • 2011-08-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多