0002-00000067

Updated at:

Issue description

The Expires field in a signed URL is missing.

Causes

A signed URL is used to send a request, but the Expires field used to specify the expiration time of the URL is not included in the signed URL.

Examples

You initiated a request to include the signature in the URL parameter, but the Expires field is missing in the signed URL.

GET /test.txt?OSSAccessKeyId=nz2p****&Signature=vjbyPxybdZaNmGa%2ByT272YEAiv**** HTTP/1.0
Date: Tue, 20 Dec 2022 08:48:18 GMT
Host: oss-example.oss-cn-hangzhou.aliyuncs.com

The Expires field specifies the expiration time of the URL. The value of this field must be a timestamp that follows the UNIX time format. It is the number of seconds that have elapsed since 00:00:00 Thursday, January 1, 1970. If the time when Object Storage Service (OSS) receives the request that contains the URL is later than the value of this field that is included in the signature, a request timeout error is returned. For example, the current time is 1141889060. To create a URL that is valid within 60 seconds, set the field to 1141889120.

Solutions

Make sure that the Expires field is included in a signed URL and that a valid value is specified for the field.

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

For more information, see Add signatures to URLs.

Note

You can use an SDK to send requests. SDKs automatically sign your requests. For more information, see Use Alibaba Cloud SDKs to initiate requests.