1

我偶然发现了一个我无法解决的奇怪错误。如果我去 iphone 设置并手动将时间设置为提前一小时,但保持时区不变,所有对 simpleDB 的请求都会导致超时。我需要一种方法来在应用程序中自动获取时间,或者向 simpleDB 发送不同的时间戳,以便一小时后。

这是一个例外:

AmazonServiceException { RequestId:605914f0-94fb-a152-4206-06c2d0b777da, ErrorCode:RequestExpired, Message:Request 已过期。时间戳日期为 2013-06-20T09:18:27.431Z。当前日期是 2013-06-20T10:18:28Z }

有没有办法解决这个问题?

4

2 回答 2

0

Amazon 只允许服务器与其请求客户端(用户 pc)之间最多 15 分钟的小时间戳变化。由于亚马逊是拥有大量用户的大型备份服务器,因此安全性非常重要。服务器和请求客户端之间的时间同步对于访问亚马逊非常重要。要解决此问题,您必须调整客户端的时间,以便最大时间戳差异达到 15 分钟。摆脱这个问题为您的系统设置了标准时间和区域。

于 2013-06-21T05:15:11.860 回答
0

我在这里找到了我的答案:链接 诀窍是这样的:

[AmazonSDKUtil setRuntimeClockSkew:3600.0];

它让用户弄清楚设备的实际时间,这可以使用 CoreLocation 来完成。

于 2013-06-26T07:19:41.197 回答