我有一个函数,它需要一个json作为输入输入和几个参数,如下所示:
data<-function(x, listname=NA) {
x<-fromJSON(x)
(x <- lapply(x, function(x) { as.data.frame(x) }))
(x <- do.call(rbind, x))
x<-unique(x)
cols <- listname
dd<-cbind(Date=x[,1],subset(x, select=cols))
mm <- melt(dd)
ss <- split(mm, mm$variable)
poo <- unname(Map(function(n,x)
list(name=n, data=unname(lapply(split(x, 1:nrow(x)), function(x) {
list(x$Date, x$value)
}))), names(ss),ss))
p<-toJSON(poo)
return(p)
}
此数据函数需要x作为json格式和一堆其他参数。
在opencpu框架中:
我根据选定的列表项构建名为param的参数列表,如下所示:
var values = [];
$("#yaxis option:selected, #xaxis option:selected").each(function() {
values.push('"' + $(this).text() + '"');
});
param="c(" + values.join(",") + ")";
console.log(JSON.stringify(param));
mysession.getObject(function(data){
var data5=JSON.stringify(data);
var req1 = ocpu.call("data", {
x:data5,
listname:param
的console.log(PARAM)
"c(\"Server1\",\"DateTime\")"
当我拨打此电话时,我收到此错误:
OpenCPU error HTTP 400
unused argument (listname = "c(\"Server1\",\"DateTime\")")
当我在R控制台上运行此功能时,
data(x,listname = c(“Server1”,“DateTime”)
它完美无缺。
我是否需要在javascript上执行更多操作以格式化param输出?