gpt4 book ai didi

jquery - 将命令行应用程序移植到 Sinatra/Ruby on Rails 应用程序

转载 作者:数据小太阳 更新时间:2023-10-29 08:22:37 24 4
gpt4 key购买 nike

我有一个运行几分钟的 Ruby 命令行应用程序。在执行过程中,在应用程序的每个阶段完成后,我将几条消息打印到命令行输出。

这只是为了让用户知道应用程序运行在哪个阶段,并使应用程序提供更多信息。

现在,我想将应用程序移植到 Sinatra 应用程序。我已经准备好整个框架。我正在使用 jQuery AJAX 将输出结果打印回给用户。

问题是,它仅在整个应用程序运行后才呈现输出,因此使其无响应(与命令行应用程序相比)。在某些情况下,整个应用程序甚至可能需要 2-3 分钟才能运行,然后将结果打印到网页上。

这等同于执行 POST,而我从此处的 jQuery AJAX 调用中一无所获。有没有一种方法可以将我打印到 STDOUT 的消息发送回网页上的用户。

这可能是一个非常简单的问题,但我是新手,过去没有做过类似的事情。

如果您需要更多信息,请告诉我。

最佳答案

你说的是执行状态。有几种方法可以解决这个问题,使用服务器发送事件 (SSE)、使用 websockets 或只是轮询更改。

最简单的解决方案是轮询更改。有另一个 Ajax 方法,它每隔一段时间向网站发送一个请求,服务器将返回包含长时间运行进程的当前状态的响应。

在你的长期运行过程中,你需要的是更新状态的里程碑,并且其他人可以访问它,即某种数据库(Redis,Memcached,SQL-ish),或者通过线程但是这不能很好地扩展。

关于jquery - 将命令行应用程序移植到 Sinatra/Ruby on Rails 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26963844/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com