mis*_*tor 8 python tornado python-3.x
在某个GET
请求中,我需要在本地读取文件,具体取决于请求中的参数,并在请求的输入流上发送.我该怎么做?
class GetArchives(tornado.web.RequestHandler):
def get(self, param1, param2):
path = calculate_path(param1, param2)
try:
f = open(path, 'rb')
# TODO: send this file to request's input stream.
except IOError:
raise tornado.web.HTTPError(404, 'Invalid archive')
Run Code Online (Sandbox Code Playgroud)
nne*_*neo 16
这是适用于任意大小文件的解决方案:
with open(path, 'rb') as f:
while 1:
data = f.read(16384) # or some other nice-sized chunk
if not data: break
self.write(data)
self.finish()
Run Code Online (Sandbox Code Playgroud)
iMo*_*om0 10
试试这个(不适用于大文件):
try:
with open(path, 'rb') as f:
data = f.read()
self.write(data)
self.finish()
Run Code Online (Sandbox Code Playgroud)
StaticFileHandler
龙卷风中有龙卷风文件
归档时间: |
|
查看次数: |
8380 次 |
最近记录: |