r-HTTR包未从API查询返回完整响应



我正在尝试使用httr从IGDB调用API(此处为文档(。当我在Postman中使用以下查询时,我没有问题,并获得了有100个条目的完整请求:

fields rating, game; where game = 114283; limit 100; sort id desc;

此处的输入示例:

{
"id": 442667,
"game": 114283,
"rating": 3.0
},

然而,当我尝试使用httr在R中进行如下查询时:

string <- paste0("rating, game; where game = ", ids[1,1], "; limit 100; sort id desc;")
data <- POST("https://api-v3.igdb.com/private/rates/",
add_headers("user-key" = "XXXXXXXXXX"),
query = list(fields = string)
)
fromJSON(rawToChar(data$content))

它只返回23行的数据帧:

id   game rating
1  442667 114283      3
...
23 383956 114283     10

其他调用类似地返回长度不同的缩短数据帧,具体取决于查询。

如果有人知道为什么会发生这种情况,我希望能有一些见解。

谢谢。

我认为您只是错误地传入了查询字符串,因为它应该被传递到http请求的-d(数据(参数中。

尝试以下操作:

  1. 将首字母";字段";进入string
  2. 将其传递给POST请求的body参数

所以:

string <- paste0("fields rating, game; where game = ", ids[1,1], "; limit 100; sort id desc;")
data <- POST(
"https://api-v3.igdb.com/private/rates/",
add_headers("user-key" = "XXXXXXXXXX"),
body = string
)

最新更新