我目前在 HTML 表中显示了实体及其属性的列表,但我想添加一项功能,让用户单击按钮将实体数据下载为 .csv 文件。这样做的最佳方法是什么?我考虑过使用 Javascript 直接从 HTML 表创建 csv 文件,但这并不兼容所有浏览器。有没有一种简单的方法可以让数据存储区写出 csv 文件?
最佳答案
如果您可以保证可以在用户请求超时期间导出数据,您可以通过在处理程序中执行此操作来创建它,只需查询并创建 csv,然后发送适当的 header 以开始下载,但有时这些 header 可能会变大导出您应该只使用任务队列。
该任务将查询并写入 blobstore 或 gcs,然后在准备好时通知用户已准备好下载。您还可以使用 channel api 进行此推送,因此它是即时的。所以流程是:
click Export Button
create a channel connection and show a loading icon
run the task with channel id and needed info to create it
when done send message to channel
onReceive download complete do a location.href=your.csv
这只是一个示例,您可以改进它,它不需要您等待并在刷新时显示链接或其他内容。
关于java - 将 GAE App Engine 数据存储区实体导出到 csv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17866544/