批量打包下载总是报错。

七牛的文档有些地方总是看不明白,在网上找了写参考,总是报错。

object(Qiniu_Error)#25 (4) { ["Err"]=> string(25) "no such file or directory" ["Reqid"]=> string(16) "iCsAAFKlhe5x1bwT" ["Details"]=> string(0) "" ["Code"]=> int(612) } 

代码如下:

//打包下载文件

public function zipfiles($zipname,$fileslist=FALSE)
{
$client = new Qiniu_MacHttpClient(null);

$pfop = new Qiniu_Pfop();

$pfop->Bucket = $this->bucket;
$pfop->Key = $zipname;

$savedKey = $zipname.'.zip';
$entry = Qiniu_Encode("$pfop->Bucket:$savedKey");
$pfop->Fops = "mkzip/2".$fileslist."|saveas/$entry";
$pfop->Force = 1;
list($ret, $err) = $pfop->MakeRequest($client);
if ($err !== null) {
    return $err;
} else {
    return $ret;
}       

}

传递的参数为: /url/aHR0cDovL3Bob3RvaWQucWluaXVkbi5jb20vRmthb0djSG1WMm93T1FuT0RZUGJ2dEtqck9HSz92PTE0MjIyNDYzNjkmZT0xNDIyMjQ5OTY5JnRva2VuPTJrZ2s2T3djSkRaWTVMY1M3Rm8xSF95dXB1VEFpX3ZSQzVlZHNkWHI6Z3pHZC1La2s1aWNzd3VRN3ZzOEdJcDJfeVNjPQ==/alias/MzcyMTU1NjcyNy5qcGc=

生成的链接为:

mkzip/2/url/aHR0cDovL3Bob3RvaWQucWluaXVkbi5jb20vRmthb0djSG1WMm93T1FuT0RZUGJ2dEtqck9HSz92PTE0MjIyNDYzNjkmZT0xNDIyMjQ5OTY5JnRva2VuPTJrZ2s2T3djSkRaWTVMY1M3Rm8xSF95dXB1VEFpX3ZSQzVlZHNkWHI6Z3pHZC1La2s1aWNzd3VRN3ZzOEdJcDJfeVNjPQ==/alias/MzcyMTU1NjcyNy5qcGc=|saveas/cGhvdG9pZDoyMDE1MTgwMDAwNS56aXA=
阅读 3k
1 个回答

你的 $pfop->Key = $zipname; 这个操作中,$zipname 是否是空间中存在的资源的文件名,如果不是的话,最好随便设置一个空间中存在的文件的文件名,然后再尝试一下。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进