问题描述
请求头x-oss-copy-source参数取值不合法。
问题原因
您发起了CopyObject请求,但是请求中用于指定拷贝的源文件地址请求头x-oss-copy-source取值不符合规范。
问题示例
以下请求示例中,x-oss-copy-source请求头包含了不合法的unknown参数。
PUT /dest-object-example HTTP/1.1
Host: versioning-copy.oss-cn-hangzhou.aliyuncs.com
Date: Tue, 09 Apr 2019 03:45:32 GMT
Authorization: OSS qn6q**************:77Dv****************
x-oss-copy-source: /versioning-copy-source/source-object?unknown=xxx
解决方案
CopyObject请求中x-oss-copy-source请求头用于指定拷贝的源文件地址。
源文件所在Bucket未开启版本控制
在源文件所在Bucket未开启版本控制的情况下,x-oss-copy-source请求头取值格式为
/source-bucket/source-key
,即填写包括源Bucket名称在内的源文件的完整路径。源文件所在Bucket已开启版本控制
在源文件所在Bucket已开启版本控制的情况下,x-oss-copy-source请求头取值格式为
/source-bucket/source-key?versionId=xxx
,即填写包括源Bucket名称在内的指定版本源文件的完整路径。
正确请求示例如下:
PUT /destobject.png HTTP/1.1
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: Tue, 09 Apr 2019 03:45:32 GMT
Authorization: OSS qn6q**************:77Dv****************
x-oss-copy-source: /src-example/srcobject.png?versionId=CAEQNRiBgICv8uaA0BYiIDliZDc3MTc1NjE5MjRkMDI4ZGU4MTZkYjY1ZDgy****
相关文档
文档内容是否对您有帮助?