【发布时间】:2019-12-21 09:30:09
【问题描述】:
所以我正在调用一个 API,如果我正在调用该 API,该 API 需要我将 pfx 证书链接到我的浏览器或 Postman。我想以编程方式执行此操作。如果 R 中有一个代码让我在传递 post 请求时使用我现有的 pfx 证书,或者我可以使用一个函数将我现有的 pfx 证书转换为 pem 证书。 请帮助我解决问题。
【问题讨论】:
所以我正在调用一个 API,如果我正在调用该 API,该 API 需要我将 pfx 证书链接到我的浏览器或 Postman。我想以编程方式执行此操作。如果 R 中有一个代码让我在传递 post 请求时使用我现有的 pfx 证书,或者我可以使用一个函数将我现有的 pfx 证书转换为 pem 证书。 请帮助我解决问题。
【问题讨论】:
我遇到了同样的问题,用这种方法解决了:
library(openssl)
library(httr)
library(usethis)
# set up openssl in .Renviron
usethis::edit_r_environ() #opens .Renviron file in Rstudio
# include this line into .Renviron file:
CURL_SSL_BACKEND="openssl"
# read your pfx certificate
cert <- openssl::read_p12(file = ".../yourCertificate.pfx", password = "yourKey")
# convert pfx to cert and key pem files to use in httr calls
openssl::write_pem(cert$cert, "my_cert.pem")
openssl::write_pem(cert$key, "my_key.pem")
# send request
GET("https://...", config = config(sslcert = "my_cert.pem", sslkey = "my_key.pem"), verbose())
【讨论】: