返回顶部

收藏

tornado实现文件下载的代码

更多

获取请求参数;请求参数生成json格式,存入文件;下载json文件```java class SpockDataIntegrationDownloadHandler(tornado.web.RequestHandler): def post(self): selectname = self.get_argument('selectname') json_string = {}

    """
    将请求参数放到dict中
    """
      type = self.get_argument('type')
      starttime = self.get_argument('starttime')
      endtime = self.get_argument('end_time')
      json_string['starttime'] = starttime
      json_string['endtime'] = endtime
      json_string['type'] = type

    """
    生成json文件
    """
    if json_string:
      filepath = './jsonfile.conf'
      if os.path.exists(filepath):
        os.remove(filepath)
      ff = open(filepath, 'w')
      json.dump(json_string, ff)  # 将json格式数据写入文件
      ff.close()

      """
      下载文件
      """
      filename = "jsonfile.conf"
      self.set_header ('Content-Type', 'application/octet-stream')
      self.set_header ('Content-Disposition', 'attachment; filename=' + filename)
      buf_size = 4096
      with open(os.path.join('',filepath), 'rb') as f:
        while True:
          data = f.read(buf_size)
          if not data:
            break
          self.write(data)
      self.finish()

```

标签:python

收藏

0人收藏

支持

0

反对

0