由于单一服务器开发模式的奇怪行为,我被困在使用openCPU进行R-Application的开发中。
我的R包可以说它的名为“ myPkgName”包含几个函数,可以用作openCPU的接口。
其中之一称为ocpu_pat2list
。
opencpu::ocpu_start_app("myPkgName")
并使用测试接口http://localhost:5656/ocpu/test/
来启动测试方式时,该功能正常运行。 。
OpenCPU error HTTP 400
Versuch eine Nicht-Funktion anzuwenden
In call:
(function (x)
x$.self$finalize())(<environment>)
opencpu-0.4.js:9:54
XML-Verarbeitungsfehler: Syntax-Fehler
Adresse: http://localhost:5656/ocpu/library/myPkgName/R/ocpu_pat2list/json
Zeile Nr. 1, Spalte 1:
更奇怪的是,到目前为止,当我在实际目标服务器上运行应用程序时,不会发生此错误。但是,为了保持效率,我确实想摆脱这个错误,甚至根本不了解问题所在。
注意:
/json
有问题的函数如下:
ocpu_pat2list <- function(patId){
if(missing(patId)){
stop("patId is missing")
}
if(is.character(patId)){
patId <- as.numeric(patId)
}
pat <- PatRefClass(patId)
pat$db_getPatInfo()
pat$db_getPatData()
ret <- pat$toList()
return(ret)
}
我很感谢任何想法。