【发布时间】:2013-07-31 21:45:15
【问题描述】:
让我们首先澄清第一件事。自 2007 年以来,我使用 divShare 将文件上传到“云”。这工作正常,但该服务现在在某些方面有点过时,并且 divShare 没有计划对此做些什么。只能使用 divShare 的过时界面或一些需要 Adobe Air 或 Java 的工具进行上传。例如,我想使用 HTML5 拖放功能自定义它。
我有一个 REST-API 到他们的服务,可以在服务器端上传文件,但没有 Ajax-API 允许我使用自定义上传方法直接上传到他们的服务。
我不想听到切换到另一个云服务提供商的消息,因为这样做太贵了,我有很多项目依赖这项服务。该服务运行正常(用于下载),因此没有理由切换。用户使用 divShare 网站(笨拙的界面)上传文件或尽可能使用提供的 Java 或 Air 应用程序。
正如我之前写的,我可以使用他们的 API 直接在服务器端上传文件。我可以制作一个 HTML 表单,可以将(一个)文件上传到我的服务器,然后将其上传到 divShare 服务,但如果你问我,这非常低效,尤其是在上传大文件、mp3 文件或视频文件时。另外,我的服务器没有divShare那么强大。
divShare API 使用 cURL 将文件上传到他们的服务器。
我的问题是: 是否可以通过隧道上传过程上传文件或重定向文件?在我的服务器不必临时存储文件的情况下?例如,这可以通过 StreamWrapper 实现吗?
如果您有任何想法、建议、问题、答案,请告诉我。
【问题讨论】:
-
没有。直到上传完成(或至少失败)后,用户级 PHP 代码才会执行。您无法在“飞行中”处理上传。如果您需要即时重定向上传,请使用其他语言。
-
可以使用 IIS 和 ASP.NET。您可以在上传完成之前添加控制上传的 http 处理程序模块。我在 apache/php 中错过了这个
-
啊,谢谢你们的cmets。很遗憾听到 PHP 无法做到这一点。 cronjob 可以解决问题吗?
标签: php curl upload cloud tunnel