0002-00000068

问题描述

URL签名中缺少过期时间。

问题原因

您采用URL签名的方式发送请求,且URL签名中指定了URL过期时间的Expires字段,但是该字段取值为空。

问题示例

您发起了在URL参数中携带签名的请求,但是URL签名中Expires字段取值为空。

GET /test.txt?OSSAccessKeyId=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

Expires字段是一个Unix时间戳(自UTC时间1970年01月01号开始的秒数),用于标识该URL的过期时间。如果OSS接收到该URL请求的时间晚于签名中包含的Expires参数时,则返回请求超时的错误码。例如,当前时间是1141889060,开发者希望创建一个60秒后自动失效的URL,则Expires可以设置为1141889120。

解决方案

URL签名中包含Expires字段,且字段的取值正确。

GET /test.txt?OSSAccessKeyId=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

更多信息,请参见在URL中包含签名

说明

推荐采用SDK的方式发起请求,可以免去手动签名的过程。更多信息,请参见使用阿里云SDK发起请求概述