php – 在s3多部分上传中设置内容类型元数据
发布时间:2020-12-13 17:24:49 所属栏目:PHP教程 来源:网络整理
导读:我正在尝试使用php中的s3 api为我上传的文件设置内容类型的元数据.我的代码看起来像这样: $upload_model = $s3-createMultipartUpload(array("Bucket" = $bucket,"Key"= $key,"ACL"=$acl,"Metadata" = array('Content-Type' = $this - get_file_type($file_
我正在尝试使用php中的s3 api为我上传的文件设置内容类型的元数据.我的代码看起来像这样:
$upload_model = $s3->createMultipartUpload(array("Bucket" => $bucket,"Key"=> $key,"ACL"=>$acl,"Metadata" => array('Content-Type' => $this -> get_file_type($file_path) ) ) ); 假设我有“video / webm”内容类型,我在s3浏览器中看到的结果是“Content-Type”设置为“binary / octet-stream”,s3创建“x-amz-meta-content-键入“对我而言”视频/ wemb“里面的值,这对我来说完全没用.因为浏览器只响应“Content-Type”标题来决定是下载文件还是在浏览器中显示它们. 解决方法
我发现了问题,这是一种误解. Content-Type元数据在createMultipartUpload函数中有自己的参数.所以这段代码工作得很好:
$s3->createMultipartUpload(array("Bucket" => $bucket,"ContentType" => $this -> get_file_type($file_path) ) ); 我不知道这个,但似乎你为元数据s3提供的任何名称都在其中添加了一个x-amz-meta前缀,以表明它是用户定义的元数据. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |