我正在開發一個應該與一些R腳本交互的Web應用程序,我非常想使用openCPU。然而,除了調用R腳本或獲取結果之外,我不知道是否有其他方法可以執行其他AJAX請求。OpenCPU服務器請求
我需要發送R腳本描述和其他可以改變的東西,因此必須在運行時通過請求到服務器來完成。
如果有人願意簡單解釋一下這是否可行,我將非常感激。
我正在開發一個應該與一些R腳本交互的Web應用程序,我非常想使用openCPU。然而,除了調用R腳本或獲取結果之外,我不知道是否有其他方法可以執行其他AJAX請求。OpenCPU服務器請求
我需要發送R腳本描述和其他可以改變的東西,因此必須在運行時通過請求到服務器來完成。
如果有人願意簡單解釋一下這是否可行,我將非常感激。
我假設你說的更新描述是指描述文件作爲R包本身的定義。當您更改此腳本或R腳本的內容時,您需要將新版本發佈到Open CPU。從我的經驗,這似乎與你相似的幾個注意事項:
我有OpenCPU內部運行的一些有問題的腳本安裝在CRAN但在OpenCPU軟件包列表沒有可用的軟件包。 OpenCPU可以使用devtools包中的install_github函數從Github提取包。如果您的腳本正在使用公共OpenCPU沒有的R功能,則可能必須使用install.packages手動安裝您的R腳本。如果調用庫或install.packages本身不起作用,這可能會有所幫助。
library('devtools')
install.packages("BIOMASS", repos = "https://cran.opencpu.org", method = "libcurl")
library("BIOMASS")
安裝的軟件包對公衆OpenCPU名單here如果你使用的是其他包裝上可用的CRAN,則需要將其添加爲一個依賴於你的進口部分在R包描述文件。您也可以使用命名空間來避免在腳本中使用PACKAGENAME :: FUNCTIONNAME。
您可以擴展javascript客戶端和opencpu服務器之間的建議「對話」嗎?例如,一個簡單的可以是' - > POST/ocpu/library/stats/R/rnorm?n = 1','< - 「[0.6216]」'。 (我知道這不一定是正確的,只是爲了清楚/討論。) – r2evans
也許是一個愚蠢的問題,但是你讀過[OpenCPU API](https://www.opencpu.org/api.html)嗎?它描述了用參數調用函數的機制。只要你描述的是爲每個電話設置的(並且不會改變呼叫中),你應該沒問題。 – r2evans