将GAE App Engine数据存储区实体导出到csv

时间:2013-07-25 18:59:48

标签: java google-app-engine csv google-cloud-datastore

我目前有一个实体及其属性列表显示在HTML表格中,但我想为用户添加一项功能,让用户点击按钮将实体数据下载为.csv文件。这样做的最佳方法是什么?我已经看过使用Javascript直接从HTML表创建一个csv文件,但这在所有浏览器中都不兼容。是否有一种简单的方法让数据存储区写出csv文件?

1 个答案:

答案 0 :(得分:1)

如果您可以保证可以在用户请求超时中导出数据,您可以通过在处理程序中执行它来创建它,只需查询和创建csv然后发送适当的标头以开始下载但是可能有时间这些将变大您应该只使用任务队列的导出。

任务将查询并写入blobstore或gcs,然后在准备好时通知用户准备下载。您也可以使用频道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

这只是一个示例,您可以对其进行改进,使其无需等待并在刷新时显示链接。