【发布时间】:2014-09-18 06:24:57
【问题描述】:
我想要一个类似 REST API 的东西,但是因为处理服务器端可能需要一些时间(5~秒)我想将内容作为流返回(这可能吗?)。 我想在 Android 应用程序中将内容作为 byteStream 读取。因为我想显示真实的进度(而不是伪造它),所以我需要一个流。
PHP 中是否有这种可能性,或者其他服务器端语言是否更适合这种情况?
问候
【问题讨论】:
标签: php rest stream server-side
我想要一个类似 REST API 的东西,但是因为处理服务器端可能需要一些时间(5~秒)我想将内容作为流返回(这可能吗?)。 我想在 Android 应用程序中将内容作为 byteStream 读取。因为我想显示真实的进度(而不是伪造它),所以我需要一个流。
PHP 中是否有这种可能性,或者其他服务器端语言是否更适合这种情况?
问候
【问题讨论】:
标签: php rest stream server-side
根据我使用 PHP 构建 Web 应用程序的经验,您在这里尝试做的工作需要大量工作,而且通常付出的努力比付出的多。
如果您将 PHP 作为 FPM 运行,一个选项可以是 PHP 函数 fastcgi_finish_request()。
但是,这将不允许您跟踪正在运行的功能的进度,但它将启动一种后台进程,以便用户不必等待整整 5 秒。
如果您想使用 PHP,另一个选择可能是 GearMan worker,但我没有足够的经验与您分享任何好的信息。他们的网站http://gearman.org/
【讨论】:
如果您想使用 REST API 构建一个 android 应用程序并需要来自服务器端的数据,那么只需使用 laravel 作为支持。它内置了带有身份验证的 API 支持。并且编写更少的代码就可以完成。
或者,如果您了解 python,那么您可以使用 Django。这也很容易用作 REST API 的身份验证。
或者在原始 php 中有一个名为 stream get content 的函数,您可以通过 API 在应用程序中使用它。
【讨论】: