环境:Windows 7,R 3.1.0
我们的公司代理阻止同一台机器上程序的进程间通信(例如R< - > Cytoscape)。如果我隐藏代理(例如,避免使用internet2库并删除Windows 7环境变量),然后启动R,通信工作正常。控制防火墙的人不愿意重写允许此流量通过的规则。
R中是否有任何简单的机制可以在同一会话内根据需要打开和关闭代理?例如,
我将教一些生物学家使用它,所以它需要变得简单。他们对R不太满意。
答案 0 :(得分:0)
从R版本3.2.0开始,setInternet2
功能可以 设置互联网连接设置并在同一R会话中更改 。根据{{3}},这是通过将internet.dll与internet2.dll合并来实现的。从帮助页面(?setInternet2
):
在R 3.2.0之前加载了一个新的DLL:现在这两个版本的函数都包含在'internet.dll'中。
因此,无需开始新会话即可进行切换。
setInternet2(TRUE)
setInternet2(NA) ## returns current value
## [1] TRUE
install.packages("zoo") ## Cause internet.dll to be loaded
setInternet2(FALSE) ## Would have thrown a warning message in R < 3.2.0
setInternet2(NA)
## [1] FALSE