我正在尝试为亚马逊产品广告API制作一个签名,已经花了几个小时,我仍然得到一个403 - 任何人都可以快速查看代码并告诉我,如果我做错了什么吗?
这是我用来创建签名的功能
def create_signature(service, operation, version, search_index, keywords, associate_tag, time_stamp, access_key):
start_string = "GET\n" + \
"webservices.amazon.com\n" + \
"/onca/xml\n" + \
"AWSAccessKeyId=" + access_key + \
"&AssociateTag=" + associate_tag + \
"&Keywords=" + keywords + \
"&Operation=" + operation + \
"&SearchIndex=" + search_index + \
"&Service=" + service + \
"&Timestamp=" + time_stamp + \
"&Version=" + version
dig = hmac.new("MYSECRETID", msg=start_string, digestmod=hashlib.sha256).digest()
sig = urllib.quote_plus(base64.b64encode(dig).decode())
return sig;
Run Code Online (Sandbox Code Playgroud)
这是我用来返回请求字符串的函数
def ProcessRequest(request_item):
start_string = "http://webservices.amazon.com/onca/xml?" + \ …Run Code Online (Sandbox Code Playgroud)