0

我是亚马逊和 python 的新手,所以请原谅我,这是一个简单的解决方法。从 boto 创建命中后,我收到以下错误:

boto.mturk.connection.MTurkRequestError: MTurkRequestError: 200 OK

<?xml version="1.0"?>
<GetAssignmentsForHITResponse><OperationRequest><RequestId>17449b9f-b1f3-4d54-bbbd-974210ce1c1b</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: ActionGetAssignmentsForHITAWSAccessKeyId*********HITId?PageNumber1PageSize10SignatureVersion1SortDirectionAscendingSortPropertySubmitTimeTimestamp2014-01-06T22:20:05ZVersion2012-03-25.  Check to make sure your system clock and timezone is not incorrect.  Our current system time: 2014-01-06T22:20:05Z.  (1389046806029 s)</Message><Data><Key>CustomerSignature</Key><Value>**************=</Value></Data><Data><Key>StringToSign</Key><Value>ActionGetAssignmentsForHITAWSAccessKeyIdAKIAIYFUA5FGNQKNWUSQHITId?PageNumber1PageSize10SignatureVersion1SortDirectionAscendingSortPropertySubmitTimeTimestamp2014-01-06T22:20:05ZVersion2012-03-25</Value></Data><Data><Key>SystemTime</Key><Value>2014-01-06T22:20:05Z</Value></Data></Error></Errors></OperationRequest></GetAssignmentsForHITResponse>

据我了解,问题是我的系统时钟和亚马逊系统时钟之间的不一致。我已经尝试在创建命中之前同步时钟,但错误仍然存​​在。

注意:这次时间完全匹配,但也有相隔 1 到 3 秒的情况!如果它有帮助,这是实施众包的一部分,我遇到了麻烦。

4

0 回答 0