trigger.io 如何处理文件上传请求中的带宽限制、超时和重试?

Posted

技术标签:

【中文标题】trigger.io 如何处理文件上传请求中的带宽限制、超时和重试?【英文标题】:How does trigger.io handle bandwidth throttling, timeout, and retries in file upload requests? 【发布时间】:2012-12-31 11:29:36 【问题描述】:

我已经构建了一些需要将大/hirez 图像文件上传到远程服务器的原生 iPhone 应用程序。我发现在 3g 网络上,如果在一定时间内使用过多带宽,请求可能会被阻止/丢弃。我相信大约是 1mb/min

参考: Max payload size for http request and response, iphone

在 trigger.io 的 API 调用中是如何处理的:request.ajax(options)?

同样,我遇到了连接失败后多次重试的问题。默认情况下是否有任何连接重试在幕后进行?...或者第一次连接失败时会触发错误回调?

还有!有没有办法设置客户端请求的超时时间?

【问题讨论】:

【参考方案1】:

目前,我们在请求模块中不提供任何带宽限制。我们使用的 HTTP 库不支持它(请注意,不再维护 ASIHTTPRequest 包装器,所以我们不能使用它,很遗憾......)。

如果我们找到一个替代的 HTTP 库,它确实支持我们的需求和限制,那么我们当然会考虑改用它!

FWIW,我们没有任何客户报告由于带宽限制(或缺乏带宽限制)而导致应用商店拒绝的问题。

任何连接或 HTTP 错误都会导致错误回调被调用 - 您可以控制您想要的任何重试逻辑。

有关超时,请参阅http://docs.trigger.io/en/v1.4/modules/request.html#ajax - timeout 是选项哈希中的一个支持参数。

【讨论】:

感谢您的回答,很高兴知道。 FWIW,我不太担心应用商店拒绝。我更担心一个真正的连接被丢弃,因为它的带宽太高了。虽然这种情况很少见,但我已经看到在 ATT 网络上通过良好的 3g 连接传输大图像文件时发生这种情况。

以上是关于trigger.io 如何处理文件上传请求中的带宽限制、超时和重试?的主要内容,如果未能解决你的问题,请参考以下文章

Trigger.io 中的地理定位双重提示

如何在 Django 中通过 PUT 请求处理文件上传?

如何解决nginx上传大文件的限制

trigger.io - 无法再创建 ipa 文件

Trigger.io 中的内联视频播放

如何将应用程序的图标(使用 Trigger.io 制作的应用程序)添加到 iOS 内容共享菜单