我一直在尝试创建可下载的内容。我正在使用webapp2.RequestHandler
,我有以下场景:
- 我正在使用 Jinja 2 创建一个带有“将其下载为 csv”链接的页面。
- 当您单击该链接时,文件已正确下载,以正确的内容开头,最后添加了模板内容。
这是我的课:
class xmlAnalyzer(Handler):
def get(self):
displaySample = self.request.get('SamplePage')
downloadMapping = self.request.get('downloadMapping')
if downloadMapping:
r = self.request.get('srcTgtMapping')
srcTgtMapping = r.split('], [')
csvContents = 'Column name; Source name; Source type; Column name; Target name; Target type;\n'
self.response.headers['Content-Disposition'] = 'attachment; filename=' + str(downloadMapping) +'.csv'
self.response.out.write(csvContents)
elif displaySample == '2':
testString = 'abracadabra'
self.response.headers['Content-Disposition'] = 'attachment; filename=' + 'testFile.csv'
self.response.write(testString)
现在,虽然第二种情况可以正常工作(如果SamplePage=2
提供了参数),但文件只包含单词“abracadabra”。然而,在第一种情况下,下载的文件如下所示:
Column name; Source name; Source type; Column name; Target name; Target type;
<!DOCTYPE html>
<link rel="stylesheet" type="text/css" href="/stylesheets/styles.css">
<Content-Type: text/html; charset=utf-8>
<html>
<body class="body">
<div class="main-title">Welcome to XML Analyzer for Informatica PowerCenter</div>
第一行是我所期望的。但这应该是全部。剩下的就是模板——知道为什么要添加它吗?提前致谢!