SAE如何实现文件的自动下载


目前在SAE上做一个文章导出功能,想实现的效果是:针对某篇文章,当我点击“导出”按钮,系统会生成了一个文件,然后浏览器自动下载或弹出文件对话框,下载完成后系统自动删除生成的文件。

我在Sina App Engine 中用storage服务实现服务器端的文件读写。
storage有getUrl函数,通过获取的url可以"右键另存为"的方式下载文件。

不过我想要的效果是:浏览器自动开始下载指定的文件,下载完后,并用storage的delete函数删除该文件。PHP该怎么实现呢?

请SAE开发高手帮忙!

sina-app-engine php

我是文文使 10 years, 11 months ago

 <?php
/*
* get domain and filename by yourself
*/
$domain = "";
$filename = "";

/*
* define content-type
*/
$stor = new SaeStorage();

if( !$stor->fileExist($domain, $filename) )
    die();

$attr = $stor->getAttr($domain, $filename);
header('Content-type: '.$attr['content_type']);
header('Content-Disposition: attachment; filename="'.$filename.'"');

echo $stor->read($domain, $filename);
$stor->delete($domain, $filename);

?>

雅音宫羽 answered 10 years, 11 months ago

Your Answer