问题标签 [plumber]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
173 浏览

r - 将 summary.lm 转换为 JSON

我正在使用 R 中的管道工运行 R 脚本。我试图从 R 脚本中获取 JSON 响应。但似乎下面的语句输出不支持 JSON 响应。

我得到以下声明。

我尝试使用 jsonlite::toJSON 但我想我在某处缺少 R 的基本原理。

我应该怎么做才能将输出转换为我想要的 JSON 结构?

0 投票
0 回答
338 浏览

r - 如何使用 r 中的管道工在同一请求中返回图像和数据

我有一个使用 R 和plumber. 如何在同一个请求中返回一个 ggplot 图一个数据表(本质上是一个数据框)的图像?最终结果应该是一张图片,旁边是一张数据表。我知道怎么分开做,但是怎么一起做呢?这是一个普遍的问题,与某些特定的代码块无关。谢谢!

0 投票
0 回答
160 浏览

r - 在管道工中运行 R“子进程”(fork)

我正在尝试使用管道工实现一个休息 API。我想要发生的是,当请求到达时,R 将启动一个后台/辅助进程,并且 API 应该立即返回一条“ok”消息。子流程具有在准备好时通知其结果的机制——因此用户无需担心。所以我想要这样的东西:

如何做到这一点?

编辑:::::

好的。包未来似乎做得很好。例如

而不是仅仅调用函数。

如果您有其他建议或意见将很高兴听到。

0 投票
1 回答
447 浏览

r - R - 管道工,如何在运行中添加停止/退出条件?

我有一个小的 API,如果到达一天中的某个时间,例如午夜,我需要停止运行,然后继续执行程序的其余部分。这与来自请求的调用无关。因为可以包含一个通过检查 Sy.time() 来中断进程的函数,但只有在请求通过时才会执行。我的猜测是我必须修改 $run 的某些属性,但在互联网上找不到太多关于它的信息。我知道可以使用系统命令获取 pid 并杀死它,但我不知道该解决方案是否可以确保程序的其余部分运行。

有人有想法吗?

提前致谢。

包含该函数的文件如下所示: (my_file.R)

和运行脚本:

0 投票
1 回答
225 浏览

r - R - 管道工,如何将值传递给全球环境?

谁能告诉我是否有办法通过管道工 API 将值(比如会话 pid)传递给全局环境?

我试过<<-运营商,但不起作用。

这是一个非常简单的例子:

(my_file.R)

以及运行 api 的脚本:

0 投票
1 回答
106 浏览

r - 在管道工中使用“新”

我的 Plumber API 中有一个简单的函数,如下所示:

我启动 Plumber(本地)并将其指向包含 api(以上)的脚本,如下所示:

并调用地址上的函数(使用 PostMan):

但我最终得到的是“发生异常”,R 控制台说:

我意识到该错误表明需要一个方法(泛型),但是当我键入时:

在我的机器上本地(在 R 控制台中)它工作正常。它向我表明某些东西没有完全加载或对 Plumber 可用,但我不知道如何修复它。有任何想法吗?

0 投票
1 回答
328 浏览

r - 参数在 Dockerfile 的 CMD 中被忽略

我有一个 dockerfile 如下

但是当我运行它并检查日志时,它说,“ARGUMENT 'plumber_2.R'被忽略了”。我也尝试过不同的端口。

我尝试过使用不同的端口但失败了

0 投票
1 回答
506 浏览

r - 使用管道工和 R 发送 JSON 文件时的变量名称限制(10000 字节)

我正在使用 R、管道工和 Docker 编写生产级代码来创建 API。我的 API 的输入是 JSON 文件,输出也是 JSON 格式。当我的输入文件超过某个空间/内存限制时,我遇到了问题。我该如何处理这些问题?

这是我得到的错误:

有什么方法可以解决这个错误?如何输入块以修复空间限制?另外为什么将其存储为变量名?

如果输入 JSON 文件的大小足够小,则 api 的输入有效。(大约 46 KB,甚至更多)。但对于 1.3 MB 文件失败

水管工版本 = 0.4.6

R 版本 = 3.5.2

有没有办法解决这个问题?或者有可能解决这个问题?

编辑:我稍后写了打印语句来检测错误的确切位置。结果它没有到达我使用 fromJSON 函数的函数的第一行。我现在已经编辑了函数。如果我发送一个小文件,一切都会被执行并打印打印语句,但对于一个大文件,它不会打印“我在这里”。

可重现的例子:

然后创建一个 createAPI.R 文件

然后创建一个 runAPI.R 文件

从终端;转到文件夹并运行

0 投票
1 回答
611 浏览

r - 在 Redhat 7.5 上向 R 中的 Plumber API 端点发送具有大主体大小的 POST 请求时出现问题

我正在尝试使用 POST 请求正文中的 MSXML2.ServerXMLHTTP 将大约 140 行和 5 列的表作为 JSON 对象(大小约为 20 KB)从 VBA 发送到使用管道工 API 包从 R 提供的端点。服务器上在 R 中运行的端点/函数抛出以下错误:simpleError in fromJSON(requestList): argument "requestList" is missing, with no default

requestList 是传递给端点函数的参数。看起来它在网络通话中迷路了。如果我将表大小减少到 30 行而不是 140 行,则会找到 requestList 并成功处理请求。

我的平台如下: 1. Endpoints 用 R 编写并使用 Plumber API 公开。2. 端点在带有 Redhat 7.5 的 AWS 实例上运行。3. 请求超时在 VBA(客户端)上设置为 100 分钟。

0 投票
1 回答
315 浏览

r - 如何使用挂载将管道工 API 分发到多个文件?

我正在处理一个大型 API,我想将其定义分发到多个文件中。据我了解,阅读文档中的“mount()”方法从铅锤开始发挥作用

我尝试了以下方法:

虹膜.R:

在一个新的 R 会话中运行:

Curling 什么都不返回,swagger json 是空的

这是一个错误还是我错过了什么?

谢谢,