2012-07-24 83 views
2

我们构建了一个将渲染图像上传到S3的应用程序。然后,我们将所有图像网址返回给第三方,第三方将所有渲染文件下拉。问题是第三方出现错误无法提取呈现文件这意味着我们给他们的网址不会返回图片。为什么S3在图像存在时无法访问图像。

如果他们第二次尝试,使用相同的URL,一切工作正常。如果我们尝试通过浏览器加载图片网址,它就在那里。

我们原本认为它与跨S3的传播有关。我们地区有文件的地方,但第三方地区还没有图像。所以我们延迟了10分钟;这没有帮助。我们可以将这个时间增加到30分钟或一个小时,但这使得测试更加困难,亚马逊说它只需要几秒钟。

关于可能发生什么的任何想法?为什么存在的具有适当权限的图像不会在第一次第三方服务要求时返回?

回答

1

这个问题如你所说没有意义,因为如果客户端使用浏览器或第三方下载文件没有区别。

我唯一想到的就是通过https建立和访问网址。

您可以使用URL对象HTTPS:// <斗名> .s3.amazonaws.com/<文件名>,你可能会收到以下错误:

卷曲:( 51)SSL证书的同行或SSH远程关键是不正常

或者用firefox你: This Connection is Untrusted

钍问题可以通过忽略证书错误的用户轻易解决,但如果第三方正在使用API​​,则可能通过使用错误的异常处理来隐藏此问题。

您是否有关于第三方如何检索此文件的更多信息?

+0

感谢您的回答。我对第三方了解不多,但是他们在一个月左右没有问题,所以我希望他们能解决他们的问题。 – TwisterMc 2012-08-20 01:22:01