问题描述
请求头Date
或者x-oss-date
字段格式不正确。
问题原因
请求头Date
字段的值不满足GMT格式的要求或者x-oss-date
字段的值不满足ISO8601
格式的要求。
问题示例
您发起了采用V4版本签名的请求。
示例1
GET /oss.jpg?x-oss-signature-verion=OSS4-HMAC-SHA256&x-oss-credential=LTAI********&x-oss-additional-headers=host&x-oss-signature=8u**** HTTP/1.1 Host: oss-example.oss-cn-hangzhou.aliyuncs.com x-oss-date: Tue, 20 Dec 2022 08:48:18 GMT
x-oss-date
字段需满足ISO8601
格式,例如20221220T084818Z
。以上示例中该字段的取值为Tue, 20 Dec 2022 08:48:18 GMT
,不符合格式要求。示例2
GET /oss.jpg?x-oss-signature-verion=OSS4-HMAC-SHA256&x-oss-credential=LTAI********&x-oss-additional-headers=host&x-oss-signature=8u**** HTTP/1.1 Host: oss-example.oss-cn-hangzhou.aliyuncs.com Date: 20221220T084818Z
请求头
Date
需满足GMT格式,例如Tue, 20 Dec 2022 08:48:18 GMT
。以上示例中该请求头的取值为20221220T084818Z
,不符合格式要求。
解决方案
将
x-oss-date
取值修改为20221220T084818Z
。GET /oss.jpg?x-oss-signature-verion=OSS4-HMAC-SHA256&x-oss-credential=LTAI********&x-oss-additional-headers=host&x-oss-signature=8u**** HTTP/1.1 Host: oss-example.oss-cn-hangzhou.aliyuncs.com x-oss-date: 20221220T084818Z
将
Date
取值修改为Tue, 20 Dec 2022 08:48:18 GMT
。GET /oss.jpg?x-oss-signature-verion=OSS4-HMAC-SHA256&x-oss-credential=LTAI********&x-oss-additional-headers=host&x-oss-signature=8u**** HTTP/1.1 Host: oss-example.oss-cn-hangzhou.aliyuncs.com Date: Tue, 20 Dec 2022 08:48:18 GMT
说明
推荐使用SDK发起请求实现V4版本签名。更多信息,请参见使用阿里云SDK发起请求概述。
相关文档
如果您需要自己实现V4版本签名,可参考SDK V4版本签名。更多信息,请参见Python SDK V4版本签名实现。
如果您需要自己实现签名逻辑,可参考V1版本签名。更多信息,请参见使用REST API发起请求。
文档内容是否对您有帮助?