3

我最近实施了 Fine Uploader,而且大部分都取得了成功。然而,一些用户无法上传。他们都在使用现代浏览器(IE10、FF 和 Chrome)。一个让我远程访问他们的机器,我可以在 Chrome 和 FF 上试用它。

我在两者上都遇到了同样的错误:

[10:45:28.330] "[FineUploader 3.8.0] Received response status 403 with body: <?xml version="1.0" encoding="UTF-8"?>
<Error><Code>AccessDenied</Code><Message>Invalid according to Policy: Policy expired.</Message><RequestId>--removed--</RequestId><HostId>--removed--</HostId></Error>"

他们计算机上的时区设置是否会生成无效策略?

4

1 回答 1

4

由于时间为 UTC,时区设置将无效。然而,根据亚马逊的说法,如果用户计算机上的时间不准确(例如,延迟 5 分钟或更长时间),则该政策将过期。

Fine Uploader 将过期日期设置为 5 分钟(同样,以 UTC 为单位)。使用的日期是在浏览器中生成的,因此将使用您的客户端计算机的时间。如果客户端计算机的时钟慢了 5 分钟或更长时间,则在亚马逊处理它时,该策略将被视为过期。

我相当确定这个问题是由于您客户的机器时钟的显着漂移造成的。如果您验证这一点,我建议您指示他们使系统时钟与时间服务器保持同步。

更新:Fine Uploader 5.5 添加了一项新功能,可让您克服用户机器/浏览器上的极端时钟漂移。有关详细信息,请参阅S3 功能页面上的时钟漂移部分

于 2013-08-29T20:39:04.057 回答