我将一个函数(apistatus5
)上传到opencpu商店(ropensci_dash
):
https://public.opencpu.org/R/user/SChamberlain/ropensci_dash/apistatus5/ascii
我将该函数放入opencpu中的商店用户名(SChamberlain
)下,但我一直收到错误:
STRING_ELT()只能应用于'字符向量',而不能应用于'原始'
opencpu是否存在某种错误检测?代码在我自己的R机器上工作正常,所以我不确定在尝试运行时bug是什么:
https://public.opencpu.org/R/user/SChamberlain/ropensci_dash/apistatus5/png
答案 0 :(得分:1)
谢谢,这很有趣。我在本地R上遇到同样的错误:
Error in rjson::fromJSON(httr::content(httr::GET("http://api.plos.org/search?q=id:10.1371/journal.pbio.0000012&wt=json"))) :
STRING_ELT() can only be applied to a 'character vector', not a 'raw'
httr::content
函数默认返回raw
向量,fromJSON
不喜欢。如果您没有收到此错误,这很可能是由于服务器上的R软件包(rjson或httr)的版本不同于本地计算机上的。我认为您需要更新httr
并将content
替换为text_content
。另外RJSONIO
包比我认为的rjson
好一点。
然而,我意识到这很难调试。我必须考虑一下如何改进这一点。