我想下载密码硬币数据的共市券。在编译以下代码时:
rm(list = ls())
cat("\014")
library(httr)
library(jsonlite)
library(tidyverse)
base_url <- "https://pro-api.coinmarketcap.com/"
path <- "v1/cryptocurrency/listings/latest?start=1&limit=5000&convert=USD&CMC_PRO_API_KEY="
endpoint <- paste(base_url, path, sep="/")
key_api <- Sys.getenv("MyKey")
res_api <- GET(
url = endpoint,
query = list(
apikey= key_api,
details = "true"
)
)
res_api我得到以下答案:
Response [https://pro-api.coinmarketcap.com/v1/cryptocurrency/listings/latest?start=1&limit=5000&convert=USD&CMC_PRO_API_KEY=&apikey=&details=true]
Date: 2021-09-02 17:14
Status: 401
Content-Type: application/json; charset=utf-8
Size: 195 B
{
"status": {
"timestamp": "2021-09-02T17:14:20....
"error_code": 1002,
"error_message": "API key missing.",
"elapsed": 0,
"credit_count": 0
}401状态意味着我的请求没有有效的身份验证凭据,而且我的API密钥可能有问题。然而,我的钥匙是正确的。有人能帮我吗?
发布于 2022-05-03 03:41:21
我通常使用python与API交互,但是阅读您的文章我发现了一些东西
这是你回应的一部分
https://pro-api.coinmarketcap.com/v1/cryptocurrency/listings/latest?start=1&limit=5000&convert=USD&CMC_PRO_API_KEY=&apikey=&details=true检查查询参数
&CMC_PRO_API_KEY=&apikey=&details=true
CMC_PRO_API_KEY和apikey都是空的。
您需要将API键作为字符串查询的一部分或作为标头的一部分传递,看起来您正在尝试同时执行这两种操作。
我认为使用头的请求是一个很好的选择,它必须如下所示:
GET('https://pro-api.coinmarketcap.com/v1/cryptocurrency/listings/latest?start=1&limit=5000&convert=USD',
accept_json(),
add_headers('CMC_PRO_API_KEY' = 'YOUR_API_KEY'))https://stackoverflow.com/questions/69034704
复制相似问题