php sdk中为何验证串和文档的不同?
这个是API文档中示例,和前面规则不一致.服了
例如:想签名以下信息:
PUT /quotes/nelson HTTP/1.0
Content-Md5: c8fdb181845a4ca6b8fec737b3581d76
Content-Type: text/html
Date: Thu, 17 Nov 2005 18:49:58 GMT
X-OSS-Meta-Author:
foo@bar.com
X-OSS-Magic: abracadabra
假如 AccessID 是: '44CF9590006BF252F707'
AccessKey 是 'OtxrzxIsfpFjA7SwPzILwy8Bw21TLhquhboDYROV',可用以下
方法签名
python 示例代码:
import base64
import hmac
import sha
h = hmac.new('OtxrzxIsfpFjA7SwPzILwy8Bw21TLhquhboDYROV',
'PUT\nc8fdb181845a4ca6b8fec737b3581d76\ntext/html\nThu, 17 Nov 2005 18:49:58
GMT\nx-oss-magic:abracadabra\nx-oss-meta-author:foo@bar.com\n
/quotes/nelson', sha)
base64.encodestring(h.digest()).strip()
签名计算结果应该为”63mwfl zYIOG6k95yxbgMruQ6QI=”, 然后加上
Authorization 头来组成最后需要发送的消息:
PUT /quotes/nelson HTTP/1.0
Authorization: OSS 44CF9590006BF252F707: 63mwfl zYIOG6k95yxbgMruQ6QI=
Content-Md5: c8fdb181845a4ca6b8fec737b3581d76
Content-Type: text/html
Date: Thu, 17 Nov 2005 18:49:58 GMT
X-OSS-Meta-Author:
foo@bar.com
X-OSS-Magic: abracadabra
-------------------------
谢谢解答,问题已经解决.
赞0
踩0