RCurl 和自签名证书问题

2024-04-29

我在获取时遇到问题RCurl功能getURL访问使用自签名证书的服务器上的 HTTPS URL。我在 Mac OS X 10.9.2 上运行 R 3.0.2。

我已阅读FAQ http://www.omegahat.org/RCurl/FAQ.html卷曲页面 http://curl.haxx.se/docs/sslcerts.html就此主题而言。这就是我的立场:

  1. 我已将证书的副本保存到磁盘(~/cert.pem)。
  2. 我已经能够使用这个完全相同的文件使用 python-requests 和“验证”选项连接到服务器,并成功。
  3. 命令行上的curl似乎忽略了--cacert选项。在使用 Mac OS X“钥匙串访问”应用程序将证书标记为受信任后,我成功地使用它访问了该网站。
  4. RCurl顽固地拒绝连接网站,代码如下:

    getURL("https://somesite.tld https://somesite.tld", verbose=T, cainfo=normalizePath("~/cert.pem"))

这是我得到的输出:

* Adding handle: conn: 0x7f92771b0400
* Adding handle: send: 0
* Adding handle: recv: 0
* Curl_addHandleToPipeline: length: 1
* - Conn 38 (0x7f92771b0400) send_pipe: 1, recv_pipe: 0
* About to connect() to somesite.tld port 443 (#38)
*   Trying 42.42.42.42...
* Connected to somesite.tld (42.42.42.42) port 443 (#38)
* SSL certificate problem: Invalid certificate chain
* Closing connection 38

当我测试两个卷曲时--cacert选项和上面的 RCurl 代码在 Linux VM 中具有相同的 cert.pem 文件和完全相同的 URL,它运行得很好。

因此,在 Linux 和 Mac OS X 上进行相同的测试,并且只有在 Mac OS X 上它们才会失败。即使将证书添加到钥匙串也不起作用。

唯一有效的是使用ssl.verifypeer=FALSE,但出于安全原因我不想这样做。

我在这里没有主意了。其他人对如何使其发挥作用有任何建议吗?


你可以试试:

library ("RCurl")
URL1 <- "https://data.mexbt.com/ticker/btcusd"
getURL(URL1,cainfo=system.file("CurlSSL","cacert.pem",package="RCurl"))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

RCurl 和自签名证书问题 的相关文章

随机推荐

  • 清漆配置文件在哪里?

    我刚刚安装了清漆并准备好提供网页服务 问题是我们达到了打开文件限制 我们已经设定了ulimit给清漆用户 我们想要找到一个可以写入此配置的文件 Maximum number of open files NFILES 131072 Locke
  • ios7 UITableViewCell SelectionStyle 不会变回蓝色

    Xcode 5 0 iOS 7 并更新现有应用程序 UITableView所选行现在是灰色的 而不是蓝色的 据我所知 他们更改了默认值selectionStyle至灰色 但 蓝色 仍然是 IB 的一个选项UITableViewCellSel
  • 在内核模块中执行shell命令

    是否可以在内核模块中执行shell命令 我知道我们可以在用户空间 C 代码中使用system子程序 我正在调试一个存在内存泄漏问题的内核模块 在无限循环中执行 insmod 和 rmmod module ko 后 8G RAM 的系统在几分
  • boost Deadline_timer 最小示例:我应该替换“睡眠”吗?

    我有一个线程 我需要每 10 毫秒执行一些操作 所以我有非常简单的代码 如下所示 while work do something Sleep 10000 boost sleep can be also used 我听说Sleep一般不推荐
  • 避免在react + typescript中使用通用函数类型

    我正在寻找一条规则来阻止使用 函数 作为类型 myMethod Function 我没有找到任何东西 所以我愿意接受建议 您可以使用 typescript eslint ban types rule 规则链接 https github co
  • Caffeine Expiry 中如何设置多个过期标准?

    我正在使用 Caffeine v2 8 5 我想创建一个具有可变到期时间的缓存 基于 值的创建 更新以及 该值的最后一次访问 读取 无论先发生什么都应该触发该条目的删除 缓存将成为三层值解析的一部分 The key is present i
  • Emmeans 连续自变量

    我想解释一下Type f with Type space实验的内容和速率Exhaustion product和定量变量Age 这是我的数据 res structure list Type space structure c 2L 2L 2L
  • Julia 中 @with_kw 和 Base.@kwdef 之间的区别?

    受到这个问题评论的启发 with kw 在 Julia 中做什么 https stackoverflow com questions 69586136 what does with kw do in julia 有什么区别 with kw
  • JQuery DatePicker 和 beforeShowDay

    我拼命尝试使用此功能在我的日期选择器中仅启用特定日期 但是beforeShowDay函数永远不会被触发 即使这不起作用 document ready function initialisation des composants initCo
  • 这个小波变换实现正确吗?

    我正在寻找 FFT 的替代方案来用 python 创建频谱分析仪 我听说小波变换比短时 FFT 更快并且提供更好的时间精度 我查阅了这篇维基百科文章 其中介绍了 Java 中的 Haar 小波变换实现 https en wikipedia
  • 像插入一样更新

    是否可以执行update like insert UPDATE table SET value N N N N Y Y Y N N WHERE my id 1 The problem is that the number of values
  • iOS - 使用隐藏字幕的 AVPlayer

    我正在 iOS 上使用 AVPlayer 来使用 closeCaptionDisplayEnabled 属性 显示电影上的字幕或副标题 hls 或 mp4 但标题不显示任何内容 我不知道为什么 您有什么解决方案可以在电影 hls mp4 上
  • 我的傅立叶逆变换中的尖峰

    我正在尝试在 MATLAB 中比较两个数据集 为此 我需要通过傅里叶变换数据来过滤数据集 对其进行过滤 然后对其进行逆傅里叶变换 然而 当我对数据进行逆傅里叶变换时 我在红色数据集的两端都出现了一个尖峰 图片显示了第一个尖峰 它在开始时应该
  • 如何使无线电输入成为必需?

    我在表单中提供了无线电输入 供用户选择性别 如何使性别成为必需的输入 用户必须选择女性或男性 否则他们会按照通常的方式得到提示required 我尝试添加required如下所示 但它不起作用 用户可以继续而不选择女性或男性 div cla
  • .NET Core 中 Path.TryJoin 相对于 Path.Combine 有什么优势?

    我刚刚开始使用 NET Core 2 1 发现Path TryJoin https learn microsoft com en us dotnet api system io path tryjoin view netcore 2 1 a
  • 如何使用seaborn、python中的彩色气泡图设置数值变量的色调范围?

    我正在尝试使用seaborn创建3D点 x y z 的彩色气泡图 每个坐标都是 0 255 范围内的整数 我希望轴代表 x 和 y 散点气泡的色调和大小代表 z 坐标 代码 import seaborn seaborn set import
  • SQL Server 2008 相对于 SQL Server 2005 有何优势? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • HTML5shiv 仅在 HEAD 部分有效?

    为了使我的网站尽可能快 我更喜欢在文档末尾加载 js 脚本 就在结束正文标记之前 为 HEAD 部分保留 css 但是 我发现下面的 html shiv 代码显然仅在 HEAD 部分实例化时才有效 有人知道解决方法吗 谷歌代码是NOTCDN
  • 将张量的完整值打印到控制台或写入张量流中的文件

    我需要将一个大张量 32 32 3 打印到控制台中 并且我只得到如下输出 245 245 245 245 245 245 245 245 245 245 245 245 245 245 245 245 245 245 245 245 245
  • RCurl 和自签名证书问题

    我在获取时遇到问题RCurl功能getURL访问使用自签名证书的服务器上的 HTTPS URL 我在 Mac OS X 10 9 2 上运行 R 3 0 2 我已阅读FAQ http www omegahat org RCurl FAQ h