| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
cf35
10年前发布

tornado实现文件下载的代码

获取请求参数;请求参数生成json格式,存入文件;下载json文件

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()