R /闪亮的承诺和期货不适用于httr

时间:2018-10-08 12:07:01

标签: r promise shiny httr

我正在使用Shiny应用程序工作,该应用程序使用其API连接到Comscore。在future / promis内执行POST命令的任何尝试均会失败,并显示以下错误:

Warning: Error in curl::curl_fetch_memory: Bulk data encryption algorithm failed in selected cipher suite.

任何POST尝试都会发生这种情况,不仅发生在/如果我尝试呼叫Comscore的服务器。作为一个简单,无害且简单的POST请求失败的示例,以下是一个示例:

rubbish <- future(POST('https://appsilon.com/an-example-of-how-to-use-the-new-r-promises-package/'))
print(value(rubbish))

但是如果我不使用期货/承诺,一切都会很好。

我要解决的问题是,当前我们有一个可以在单用户环境中正常运行的应用程序,但是必须对其进行升级,才能由专用的Shiny Server计算机为多用户方案提供服务。该应用程序连续进行几次这样的呼叫(从几十个到几百个),耗时5到15分钟。

该代码在observeEvent块中运行,由用户在配置了要提交的请求时单击按钮触发。

我的实际代码更长,在POST命令之前和之后还有其他几行,以准备请求并处理收到的答案。

我已经验证了POST命令之前的所有行均已执行,因此问题似乎就在这里,试图进行POST从promise内部连接到外部世界的情况。

我在RHEL服务器中使用RStudio Server 1.1.453和R 3.5.0。 软件包版本为

  • 闪亮:1.1.0
  • httr:1.3.1
  • 未来; 1.9.0
  • 承诺:1.0.1

预先感谢

0 个答案:

没有答案