如何在php中处理box.net下载响应

时间:2012-11-14 08:18:28

标签: php api curl download box-api

我正在尝试使用php中的API使用box.net下载文件。 根据我编写代码的文档。

但作为回应我得到了一些奇怪的文字。 这是我的代码:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.box.com/2.0/files/3934139624/content ");
curl_setopt($ch, CURLOPT_HEADER, false); 
curl_setopt($ch, CURLOPT_HTTPGET,true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Authorization: BoxAuth api_key={MyApikey}&auth_token={Mytoken}"));
$result = curl_exec($ch);
die('DIE'); 

我得到的反应是这样的:

  

PK!Ðòš-[Content_Types] .xml¢('UËNÃ0¼#ñ'¯¨qË!Ô'G¨Dù×Þ'‰mÙÛ×ß³IšA>†^“EÑÎÌÎÎnÆÓ]žEðA[”°QH¯~ÉŸb üv8¼ãÒƒ,0ØdüF¼VÍ“ÇW'ßZ¯xj- rels / document.xml.rels¢(¬“ËNÃ0E÷HüCä=qRq'æ&gt;¾ƒ”'sμà©WÃ-ŽÌEî>nâ>ðÍqã¨Í§y±3ÆóükeìE±ty'àÕ³üÍé»|ÏÖ ¤KLÏhóÊŸi¾IàpzÒŽ¹ç?}xÛxx;ùgïÐ¥f7YôKéMèwÄÆÇÐEïúÃF§³ß9ètÏ7ÌKWxÐ/žñ¡“ùéâ; W ...-Ô•¯bú%B×óù§ìvîãã”ô£8ÜílìÐqq~x|!Ã4Á1NâñaãVš+¾•ËÓr¤ØLe “OC“OJS“OE(NR'»&GT; WBR iê'6œ,•ôçPøH†.ÔO«&lt;çμ¼G> [¯<Ÿ~ëÈŒcñ)“ )ò<­4/nÌ—­ôEÛþßpÄÙ÷æ¬Û?xg«\ÖîЃSäÀ•Ç°tÒ(¾‹³ƒwïg˜³ÕKøŒ;ù¾.†ì, l©´ªµÐm¯]‰ŠTíßnÁ¿·ß¤/ë»–ª”짓6õ“^Qð-wô—Qð]6bé à²@ÆûÍ#¡™˜×Fa'™Â†êMî'ÂÛ¿U*XÆÞ/¾\ÁÜl X5HñKÕ˜sØ8EÌ/!вÃÐeq”µ±dº¨É…⛂R—7ЊU¹iØF:h±FÎç¢àõð¾ôÈ!˜&æ',ADSÈP¸L'M.úìäpow½Ý(¥Ú·RãpK0è7^;¿Lë4f¤P3Ì...... #M s 'ï:......(@à(1ß; 9 |÷S½°T4ϹF²ì%“$åÁf”tÖØ©R&amp;〜nn†)@éóÒfŽBC?‰ð€()ÄÝ(%LNËñ)V^«ÞÛ¶[5+Í>jÀ£WlŽ÷¡¿)ÁoôFBû›CÕ©ë­Ü™ÖI¦æÖQ×ƤHX-ijž^ÀDûs“......Ø}

任何人都能告诉我如何处理这种反应? 提前谢谢。

2 个答案:

答案 0 :(得分:0)

根据box.net api文档:

  

对此请求的响应将只是该请求的完整数据   归档。

所以你需要在本地保存文件内容。

在回复标题中,您需要check content-type,现在它是XML

$result = curl_exec($ch);
$fp = fopen('test.xml','wb');
fwrite($fp, $result);
fclose($fp);

答案 1 :(得分:0)

@GBD以下是响应标题:

  

找到HTTP / 1.1 302   服务器:nginx   日期:2012年11月14日星期三09:11:51 GMT   内容类型:text / html;字符集= utf-8的   连接:保持活力   缓存控制:私有   地点:https://dl.boxcloud.com/bc/1/85f471520cf611a05025a5f/JolueqOGpciD6dgYhecNBoVpYxkvmYe1ZLheZor6BF4DUBIelMQTkFwYIys3nIibNIIEHUp447tBZLaXDzIbNQ,,/a44510a2b21219463fade41d6b36dabf/   内容长度:0

     

HTTP / 1.1 200好的   服务器:nginx   日期:2012年11月14日星期三格林尼治标准时间09:11:52   Content-Type:application / vnd.openxmlformats-officedocument.wordprocessingml.document   内容长度:19944   连接:保持活力   缓存控制:私有   Accept-Ranges:字节   Content-Disposition:attachment; filename =“cloud computing proposal.docx”; filename * = UTF-8''cloud%20computing%20proposal.docx   X-Content-Type-Options:nosniff   Accept-Ranges:bytes

并且在xml中保存文件也无法打开。