问题描述
请求中包含的签名过期时间字段取值为空。
问题原因
您发起了Amazon S3兼容的请求,但是请求参数中Expires
字段取值为空。
问题示例
您发起了在URL参数中携带签名的请求,但是请求参数中Expires
字段取值为空。
GET /test.txt?AWSAccessKeyId=nz2p****&Expires=&Signature=vjbyPxybdZaNmGa%2ByT272YEAiv**** HTTP/1.0
Date: Tue, 20 Dec 2022 08:48:18 GMT
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
x-oss-s3-compat: true
URL参数中Expires
是必选参数,用于指定签名的有效时长,格式为Unix时间戳(自UTC时间1970年01月01号开始的秒数)。如果OSS接收到该URL请求的时间晚于签名中包含的Expires参数时,则返回请求超时的错误码。例如,当前时间是1141889060,开发者希望创建一个60秒后自动失效的URL,则可以设置Expires
时间为1141889120。
解决方案
确保Expires
字段存在且值正确。
GET /test.txt?AWSAccessKeyId=nz2p****&Expires=1141889120&Signature=vjbyPxybdZaNmGa%2ByT272YEAiv**** HTTP/1.0
Date: Tue, 20 Dec 2022 08:48:18 GMT
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
x-oss-s3-compat: true
推荐使用Amazon S3 SDK发起请求。更多信息,请参见使用Amazon S3 SDK访问OSS。
文档内容是否对您有帮助?