我在向Rackspace Cloudfiles上传时遇到问题。
我可以上传任何基于文本的内容(text / html,text / plain等),但我尝试的其他任何东西都失败了MisMatchedChecksumException,据我所知,这意味着我端的md5_file()没有在他们结束时匹配他们的计算?
如果我没有设置etag(因此没有进行此检查)文件已上传但不正确,因此例如图片大小相同但只是不呈现?
有没有人知道如何解决这个问题?
答案 0 :(得分:2)
以下代码对我来说很好,你能展示一个不起作用的片段吗?
$fname = basename('test.jpg');
$md5 = md5_file($fname);
$container = $conn->get_container('my_container');
$o2 = $container->create_object($fname);
$o2->content_type = "image/jpeg";
$o2->set_etag($md5);
$result = $o2->load_from_filename($fname);
assert('!is_null($result)');
assert('$o2->getETag() == $md5');