【问题标题】:InternetOpenUrl failed: 'A connection with the server could not be established'InternetOpenUrl 失败:“无法建立与服务器的连接”
【发布时间】:2021-10-10 10:32:42
【问题描述】:

我在尝试设置 Github 操作以通过 usethis::use_github_action_check_standard() 检查我的包的构建时陷入了困境。该函数在尝试从r-lib repo 拉取.yaml 文件时失败。我一直试图弄清楚为什么readLines() 对我来说失败了。 readLines() 似乎对于来自 Github 的任何文件都失败,但对于来自其他位置的文件确实有效。

##
## random .txt file works
##
readLines("https://filesamples.com/samples/document/txt/sample1.txt")
#> Warning in readLines("https://filesamples.com/samples/document/txt/
#> sample1.txt"): incomplete final line found on 'https://filesamples.com/samples/
#> document/txt/sample1.txt'
#> [1] "Utilitatis causa amicitia est quaesita."                                                                                                                                                                                                                                                                                                                   
#> [2] "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Collatio igitur ista te nihil iuvat. Honesta oratio, Socratica, Platonis etiam. Primum in nostrane potestate est, quid meminerimus? Duo Reges: constructio interrete. Quid, si etiam iucunda memoria est praeteritorum malorum? Si quidem, inquit, tollerem, sed relinquo. An nisi populari fama?"
#> [3] ""                                                                                                                                                                                                                                                                                                                                                          
#> [4] "Quamquam id quidem licebit iis existimare, qui legerint. Summum a vobis bonum voluptas dicitur. At hoc in eo M. Refert tamen, quo modo. Quid sequatur, quid repugnet, vident. Iam id ipsum absurdum, maximum malum neglegi."
#
##
## random .yaml file also works (very long, not showing output)
## 
# readLines("https://wg21.link/index.yaml")

##
## .yaml file from github does not work
##
readLines("https://raw.githubusercontent.com/r-lib/actions/master/examples/check-standard.yaml", encoding = "UTF-8")
#> Warning in file(con, "r"): InternetOpenUrl failed: 'A connection with the server
#> could not be established'
#> Error in file(con, "r"): cannot open the connection

##
## .txt file from github does not work
##
readLines("https://raw.githubusercontent.com/neslib/Neslib.Yaml/master/License.txt")
#> Warning in file(con, "r"): InternetOpenUrl failed: 'A connection with the server
#> could not be established'
#> Error in file(con, "r"): cannot open the connection

我已尝试在 RStudio 选项中选中和取消选中 Use Internet Explorer library/proxy for HTTP 无效。

reprex package (v2.0.0) 于 2021-08-05 创建

【问题讨论】:

    标签: r github r-usethis


    【解决方案1】:

    对于其他可能遇到此问题的人 - 我在启用 TLS 1.2 后丢失了 Warning in file(con, "r"): InternetOpenUrl failed: 'A connection with the server could not be established' 警告:

    • Windows 菜单栏,单击工具 > Internet 选项 > 高级选项卡
    • 滚动到安全类别,手动选中使用 TLS 1.2 的选项框

    在使用download.file() 时遇到相同的错误集(如问题中的)后找到此解决方案,其中 Windows 的默认方法是 wininet.dll

    【讨论】:

      猜你喜欢
      • 2020-04-06
      • 2012-10-17
      • 1970-01-01
      • 1970-01-01
      • 2017-02-16
      • 2019-06-21
      • 2021-07-18
      • 2018-08-09
      • 1970-01-01
      相关资源
      最近更新 更多