R / Shiny обещания и фьючерсы не работают с httr - PullRequest
0 голосов
/ 08 октября 2018

Я работаю в приложении Shiny, которое подключается к Comscore, используя их API.Любая попытка выполнения команд 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))

Но все работает нормально, если я не использую фьючерсы / обещания.

Проблема IЯ хочу решить, что в настоящее время у нас есть приложение, которое отлично работает в однопользовательской среде, но оно должно быть обновлено для многопользовательского сценария, обслуживаемого выделенным компьютером Shiny Server.Приложение выполняет несколько таких вызовов подряд (от нескольких десятков до нескольких сотен), занимая от 5 до 15 минут.

Код выполняется внутри блока наблюдающего события, который запускается кнопкой, нажимаемой пользователем, когдаон настроил запрос на отправку.

Мой фактический код длиннее, и есть другие строки как до, так и после команды POST, чтобы подготовить запрос и затем обработать полученный ответ.

Я проверил, что все строки перед выполнением команды POST выполняются, поэтому проблема, по-видимому, возникает при попытке установить POST-соединение с внешним миром из обещания.

Я использую RStudioСервер 1.1.453 вместе с R 3.5.0 на сервере RHEL.Версии пакета:

  • блестящий: 1.1.0
  • httr: 1.3.1
  • future;1.9.0
  • обещание: 1.0.1

Заранее спасибо,

...