问题描述
批量删除操作请求体中Object节点下的VersionId参数取值为空。
问题原因
您发起了DeleteMultipleObjects请求,但是请求体XML中某个Object节点下的VersionId参数取值为空字符串。该参数表示被删除Object的版本ID,不允许为空。
问题示例
以下请求中XML中Object节点下的VersionId参数取值为空字符串。
POST /?delete HTTP/1.1
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: Tue, 09 Apr 2019 06:09:34 GMT
Content-MD5: 2Tpk+dL/tGyuSA+YCEuSVg==
Authorization: OSS qn6q**************:77Dv****************
<?xml version="1.0" encoding="UTF-8"?>
<Delete>
<Quiet>false</Quiet>
<Object>
<Key>multipart.data</Key>
<VersionId></VersionId>
</Object>
</Delete>
解决方案
确保VersionId参数取值正确
如果希望删除指定版本Object,需确保请求体XML中Object节点下的VersionId参数取值不为空字符串,且取值正确。
POST /?delete HTTP/1.1 Host: oss-example.oss-cn-hangzhou.aliyuncs.com Date: Tue, 09 Apr 2019 06:09:34 GMT Content-MD5: 2Tpk+dL/tGyuSA+YCEuSVg== Authorization: OSS qn6q**************:77Dv**************** <?xml version="1.0" encoding="UTF-8"?> <Delete> <Quiet>false</Quiet> <Object> <Key>multipart.data</Key> <VersionId>CAEQNRiBgIDyz.6C0BYiIGQ2NWEwNmVhNTA3ZTQ3MzM5ODliYjM1ZTdjYjA4****</VersionId> </Object> </Delete>
删除VersionId参数
如果不希望删除指定版本Object,直接删除VersionId参数。
POST /?delete HTTP/1.1 Host: oss-example.oss-cn-hangzhou.aliyuncs.com Date: Tue, 09 Apr 2019 06:09:34 GMT Content-MD5: 2Tpk+dL/tGyuSA+YCEuSVg== Authorization: OSS qn6q**************:77Dv**************** <?xml version="1.0" encoding="UTF-8"?> <Delete> <Quiet>false</Quiet> <Object> <Key>multipart.data</Key> </Object> </Delete>
相关文档
文档内容是否对您有帮助?