是否可以在Ubuntu上使用我自己安装的OpenCPU来使用opencpu.js?我已经完成了对代码的快速扫描,并且无法看到我将设置主机名的位置。opencpu.js请求我自己安装的opencpu?
回答
编辑:此功能已在opencpu.js 0.3中得到了改进。您现在可以使用`opencpu.seturl()设置opencpu服务器的路径。参数必须指向一个包,例如:
opencpu.seturl("/ocpu/library/mypackage/R")
,或者如果你的浏览器支持CORS你可以这样做:
opencpu.seturl("//public.opencpu.org/ocpu/library/mypackage/R")
或
opencpu.seturl("//public.opencpu.org/ocpu/github/yourname/yourpackage/R")
设置在此之后,客户端将检查这个服务器是否在线,并打印一些调试的东西到JavaScript控制台。如果一切正常,您可以使用库,就像它是应用程序的一部分一样。看看http://www.stat.ucla.edu/~jeroen/appdemo/看到这个在行动。
也就是说,opencpu.js
库被设计为包含在应用程序中。 OpenCPU应用程序是一个R包,它包含一些使用OpenCPU API调用包中的R函数的网页。
因为应用程序是已经安装到OpenCPU服务器上R封装,所述opencpu.js
文库假定服务器的当前主机上运行,并且使用相对路径来调用服务器。此外,由于opencpu.js
包含在特定的R程序包中,所以opencpu.js
中的函数对于指定程序包没有任何参数:它假定您正在调用R函数当前的程序包。
这听起来有点让人困惑,但相对路径对于保持应用程序的可移植性非常重要。例如,在相同的应用程序应该无论工作是否托管为:
https://public.opencpu.org/ocpu/gitstats/www
https://public.opencpu.org/ocpu/github/SChamberlain/gitstats/www/
https://public.opencpu.org/ocpu/user/jeroen/library/gitstats/www/
这种设计的最大好处是,你的[R包将是一个自包含的,独立的应用程序,它可以在任何地方简单地部署通过安装包装。这可以避免跨域请求和软件版本控制带来的麻烦。由于您的网页和R功能是同一个软件包的一部分,因此您可以确保js和R代码包含兼容版本。如果您要在单独的服务器上托管js,那么安装新版本的R包时可能会中断服务。
也许最好的入门方法是看看其中一个public apps。这些应用程序的源代码可在opencpu github repo上找到,每个应用程序都建立在opencpu.js
库上。
- 1. 安装nginx中断OpenCPU的HTTP请求
- 2. 使我自己的安装
- 3. 如何安装OpenCPU?
- 4. OpenCPU服务器请求
- 5. 如何安装我自己的Java库?
- 6. 对自己的PHP请求
- 7. 安装自己的宝石
- 8. 请求安装Caffe
- 9. OpenCPU如何在R/pub中安装包?
- 10. 在Amazon Linux实例上安装OpenCPU
- 11. 在Bitnami服务器上安装OpenCPU
- 12. Android应用程序是否可以请求重新安装自己的APK? (从安装服务)
- 13. Nginx的stub_status:忽略自己的请求
- 14. pip安装请求错误
- 15. 我可以在我的商店安装自己的证书吗?
- 16. 创建您自己的PayPal请求
- 17. EJB请求自己的引用?
- 18. MiniProfiler,摆脱请求自己的资源
- 19. 403对ajax请求到自己的域
- 20. Phonegap - 无法安装我自己的自定义插件v3.1
- 21. Python请求库与代理 - 获取请求仍然发送我自己的IP
- 22. 可以安装自己的插件吗?
- 23. 创建并安装自己的模块
- 24. 从我自己的安全系统回收我自己
- 25. 在installshield中安装自己的软件包后安装Dotnet?
- 26. Github拉到私人回购请求(从我自己的分支)
- 27. 无法覆盖shouldInterceptRequest(),使我自己的HTTP请求
- 28. Restangular - 如何取消/执行我自己的请求
- 29. 在我自己的服务器上安装wordpress的根目录
- 30. 自动安装要求
感谢您的回复。你所描述的是有道理的。但是,这不是我们如何使用OpenCPU。事实上,我们正是在'1.2在一个团队中使用OpenCPU'中描述的。我们有数据分析人员编写所有的R并部署到我们的OpenCPU服务器,我们有编写JavaScript并部署到不同服务器的Web程序员。我们喜欢独立更新+部署JavaScript和R.保持JavaScript与R之间的契约并不是问题。但是,我们正在开发自动化测试来验证这是否可以确保。 –
我更新了答案。如果您向我发送电子邮件,我很乐意讨论您的使用案例并提供更具体的建议。 – Jeroen