我正在研究 boto 版本的 2.6.0 。我在连接到 mturk 时遇到问题。
我的代码是:
mturk_connection = MTurkConnection(aws_access_key_id=ACCESS_ID, aws_secret_access_key=SECRET_KEY, is_secure = True, host = HOST)
print mturk_connection.get_account_balance()
我得到的错误信息是:
boto.mturk.connection.MTurkRequestError: MTurkRequestError: 200 OK
<?xml version="1.0"?>
<GetAccountBalanceResponse>
<OperationRequest>
<RequestId>06783745-3810-49d3-8235-d8a95f36b747</RequestId>
<Errors>
<Error>
<Code>AWS.BadClaimsSupplied</Code>
<Message>The specified claims are invalid. Based on your request, your signature should be generated using the following string: ActionGetAccountBalanceAWSAccessKeyIdAKIAQEQC5M72KQQSignatureVersion1Timestamp2012-11-15T06:10:07ZVersion2012-03-25. Check to make sure your system clock and timezone is not incorrect. Our current system time: 2012-11-15T06:10:07Z. (1352959808079 s)</Message>
<Data>
<Key>CustomerSignature</Key>
<Value>eMfIjDkM7v2/4fp4WqTOjtaFGDp1/Ydr2TTVV+oP5m0=</Value>
</Data><Data>
<Key>StringToSign</Key>
<Value>ActionGetAccountBalanceAWSAccessKeyIdAKIAJD3HEQEQC5M72KQQSignatureVersion1Timestamp2012-11-15T06:10:07ZVersion2012-03-25</Value>
</Data><Data>
<Key>SystemTime</Key>
<Value>2012-11-15T06:10:07Z</Value>
</Data>
</Error>
</Errors>
</OperationRequest>
</GetAccountBalanceResponse>
我试图找出错误的根源,但失败了。请提出一些建议。