我正在尝试使用httr,而来自rapidapi.com的代码片段是我第一次尝试使用天空扫描仪API.This。
我的问题是,直接从站点复制的代码不起作用,这是因为代码中有'。
如何调试此错误以便可以使用API?
library(httr)
url0 <- "https://skyscanner-skyscanner-flight-search-v1.p.rapidapi.com/apiservices/reference/v1.0/currencies"
API_KEY <- 'my_API_key'
HOST_URL <- 'skyscanner-skyscanner-flight-search-v1.p.rapidapi.com'
response <- VERB(verb="GET",
url=url0,
config = httr::add_headers(x_rapidapi-key = API_KEY , x_rapidapi-host = HOST_URL,'),
encode = content_type("application/octet-stream"))
content(response, "text")编辑-1
我在这里发现了一篇文章,它解释了这个站点在代码片段中出现了两个错误,并建议使用修改代码。然而,这是一个不同的错误。我无法正确地输入response对象。
library(httr)
url <- "https://skyscanner-skyscanner-flight-search-v1.p.rapidapi.com/apiservices/reference/v1.0/currencies"
API_KEY <- 'my_API_key'
response <- VERB("GET",
url,
add_headers(x-rapidapi-key = API_KEY,
x-rapidapi-host = "skyscanner-skyscanner-flight-search-v1.p.rapidapi.com"),
content_type("application/octet-stream"))
content(response,"text")发布于 2021-05-24 21:18:44
我找到了解决问题的办法。这应该会纠正代码片段,并让它在R中运行。
# Correct
library(httr)
url <- "https://skyscanner-skyscanner-flight-search-v1.p.rapidapi.com/apiservices/reference/v1.0/currencies"
API_KEY <- "your_key"
response <- VERB("GET",
url,
add_headers("x-rapidapi-key" = API_KEY,
"x-rapidapi-host" = "skyscanner-skyscanner-flight-search-v1.p.rapidapi.com"),
content_type("application/octet-stream"))
content(response,"text")
Robject <- content(response, "text")
Robject这将纠正快速API代码片段上的确切代码。
发布于 2021-05-24 21:11:22
我不确定这是否是正确的响应,但是您的第一个代码段在末尾有一个额外的‘,就像您说的:
config = httr::add_headers(x_rapidapi-key = API_KEY , x_rapidapi-host = HOST_URL,'),试着换到
config = httr::add_headers(x_rapidapi-key = API_KEY , x_rapidapi-host = HOST_URL),总之,我会尝试:
library(httr)
url0 <- "https://skyscanner-skyscanner-flight-search-v1.p.rapidapi.com/apiservices/reference/v1.0/currencies"
API_KEY <- 'my_API_key'
HOST_URL <- 'skyscanner-skyscanner-flight-search-v1.p.rapidapi.com'
response <- VERB(verb="GET",
url=url0,
config = httr::add_headers(x_rapidapi-key = API_KEY, x_rapidapi-host = HOST_URL, content_type("application/octet-stream")))然后只检查response的响应
发布于 2021-09-15 09:48:10
始终使用RapidAPI提供的代码片段。它是真实的,而且总是有效的。它们为40种不同库的20种编程语言提供了支持。
试试下面的代码片段:
library(httr)
url <- "https://skyscanner-skyscanner-flight-search-v1.p.rapidapi.com/apiservices/reference/v1.0/currencies"
response <- VERB("GET", url, add_headers(x_rapidapi-host = 'skyscanner-skyscanner-flight-search-v1.p.rapidapi.com', x_rapidapi-key = '*****************************', '), content_type("application/octet-stream"))
content(response, "text")https://stackoverflow.com/questions/67678566
复制相似问题