我使用下面的函数从一个API中获取一些内容。这里的问题是,有一个速率限制,当我检查URL时通常会超过这个限制。因此,我想知道是否有其他方法可以在不打开URL的情况下检查它们。
Updated <- function(x){http_error(GET(x))}
很抱歉,没有真正的方法来产生一个好的样本,即
多么好的问题,这有时是非常有用的! 也许你可以尝试运行 curlGetHeaders()
函数。它在基础R中,所以你不需要安装任何包。只需输入。
curlGetHeaders("https://stackoverflow.com/")
这应该只要求HTTP头信息,而不是内容(就像运行命令行的 curl -I
),所以它可能会绕过你的速率限制(但也可能不会,这取决于API提供商,你需要先试一下)。
如果你想获得HTTP状态,只需运行。
# get all HTTP headers
headers <- curlGetHeaders("https://stackoverflow.com/")
# get HTTP status code
http_status <- attributes(headers)$status
#> http_status
# [1] 200
# or full status header
headers[1]
# [1] "HTTP/1.1 200 OK\r\n"
更多信息请看 文件 或打 ?curlGetHeaders
到你的R控制台。
希望这能帮助你