Во-первых, я понимаю, что есть много веских причин НЕ делать этого, но для интереса мой вопрос: существует ли рекомендуемый (или допустимый) метод для сохранения информации из http-запроса в сеанс R, на котором работает сервер?
Например, триггер во внешней системе запускает HTTP-запрос при обновлении, который содержит основную информацию (время обновления). Каков наилучший способ сделать эту (теперь обновленную) временную переменную доступной в R?
В качестве примера ниже я попытался использовать ..\identity
API для записи простого файла .csv. Я получил результат, который не выглядел сбоем, но файл не был создан (и я согласен, что это хорошо по умолчанию), но я хотел бы понять, возможно ли обновить состояние на другом на стороне сервера (т. е. где угодно, кроме хранилища объектов \tmp), даже если (например) потребуется использовать и установить специальный пакет?
Извиняюсь, если это где-то задокументировано, но когда я щелкнул ссылку на руководство администратора https://raw.github.com/jeroenooms/opencpu/opencpu-0.7/manual/document.pdf, я получил 404
Спасибо.
require(opencpu)
#Loading required package: opencpu
#Initiating OpenCPU server...
#OpenCPU started.
#[httpuv] http://localhost:8810/ocpu
#OpenCPU single-user server ready.
require(RCurl)
# no problem getting data
getForm("http://localhost:8810/ocpu/library/datasets/R/mtcars/print")
# ... returns data
# or querying with the identity function
postForm("http://localhost:8810/ocpu/library/base/R/identity/print",x="mtcars[1,]")
# [1] " mpg cyl disp hp drat wt qsec vs am gear carb\r\nMazda RX4 21 6 160 110 3.9 2.62 16.46 0 1 4 4\r\n"
# but if I try a 'write' function...
postForm("http://localhost:8810/ocpu/library/base/R/identity/print",x="write.csv(matrix(1:10,2),file='test2.csv')")
# I get a NULL return (but no failure)
#[1] "NULL\r\n"
#attr(,"Content-Type")
#charset
#"text/plain" "utf-8"