问题描述
Bucket防盗链配置中TruncatePath
参数值与AllowTruncateQueryString
参数的值冲突。
问题原因
您发起了PutBucketReferer请求来修改Bucket的防盗链配置,但是您提交的配置中TruncatePath
参数的值为true,而AllowTruncateQueryString
参数的值为false,导致接口报错。
问题示例
如下请求的XML配置中TruncatePath
的值与AllowTruncateQueryString
的值冲突,导致请求错误。
PUT /?referer HTTP/1.1
Date: Fri, 24 Feb 2017 03:15:40 GMT
Content-Length:322
Content-Type: application/xml
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Authorization: OSS qn6q**************:77Dv****************
<?xml version="1.0" encoding="UTF-8"?>
<RefererConfiguration>
<AllowEmptyReferer>false</AllowEmptyReferer>
<AllowTruncateQueryString>false</AllowTruncateQueryString>
<TruncatePath>true</TruncatePath>
<RefererList>
<Referer>http://www.aliyun.com</Referer>
</RefererList>
</RefererConfiguration>
解决方案
如果需要设置请求体XML配置中TruncatePath
节点值为true,则必须将AllowTruncateQueryString
参数的值也设为true。正确请求示例如下:
PUT /?referer HTTP/1.1
Date: Fri, 24 Feb 2017 03:15:40 GMT
Content-Length:322
Content-Type: application/xml
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Authorization: OSS qn6q**************:77Dv****************
<?xml version="1.0" encoding="UTF-8"?>
<RefererConfiguration>
<AllowEmptyReferer>false</AllowEmptyReferer>
<AllowTruncateQueryString>true</AllowTruncateQueryString>
<TruncatePath>true</TruncatePath>
<RefererList>
<Referer>http://www.aliyun.com</Referer>
</RefererList>
</RefererConfiguration>
相关文档
文档内容是否对您有帮助?