当前位置: 首页 > 知识库问答 >
问题:

如何正确使用API数据请求的请求头?

司空昊阳
2023-03-14

我试图找到使用httr包通过R连接Appannie的API的方法(根本没有API连接的经验)。API要求包含来自appannie网站的请求标题引用:注册App Annie帐户并生成API密钥。将此密钥添加到您的请求标头中,如下所示:
授权:持有人“”引用

我写了这样的代码

query <- "http://api.appannie.com/v1/accounts/1000/sales?break_down=application+dat
&start_date=2012-01-01
&end_date=2012-02-01
&currency=USD
&countries=US
&page_index=1"
getdata<-GET(url=query, add_headers("Authorization: bearer 811b..."))

命令http_status(getdata)显示我"客户端错误:(401)未经授权"有人能帮我吗,我做错了什么?

共有1个答案

公良鸿风
2023-03-14

您没有正确指定标题<代码>添加标题(…) 需要命名列表。

library(httr)    # for GET(...)
library(rjson)   # for fromJSON(...)
query <- "https://api.appannie.com/v1/accounts/1000/sales?break_down=application+dat&start_date=2012-01-01&end_date=2012-02-01&currency=USD&countries=US&page_index=1"
getdata<-GET(url=query, add_headers(Authorization="bearer <your api key>"))
fromJSON(content(getdata,type="text"))
# $code
# [1] 403
# 
# $error
# [1] "Invalid connection account"

这在某种意义上是“有效的”,我没有得到401错误。在我的情况下,帐户1000不存在。

关于评论中的http/https问题,http已被废除,从2014年4月1日起不再被接受,因此您不妨开始使用https。

 类似资料:
  • 有一个非正式的百度百科APIhttp://baike.baidu.com/api/openapi/BaikeLemmaCardApi?appid=379020&bk_key=uzi 对该API发起请求时,有一定概率返回 errno: 2错误信息,该错误表示什么意思?如何避免返回该错误?

  • 我制作了一个简单的JavaScript页面,当按下“发送”按钮时,该页面应该显示时间表并通过HTTP发送数据。 数据应该发送到一个Arduino使用这个简单的方案: http://arduinoip/DATASTARTSHEREhh:mm;hh:mm;hh:mm;[...];DATAENDSHERE 我使用以下代码打印我在Arduino串行监视器中收到的所有数据: 我收到的数据如下: 新客户 CM

  • 我正在努力为Symfony Api平台中使用的请求正文获得正确的定义: 从上图中,我的endpoint期望的是包含必需值的JSON。我将必需值定义在中,但这不是真的,它们甚至不属于:、或。 我尝试了两种定义(并且删除了一些与解决方案无关的行): 第二个定义看起来像: 结果如下: 他们似乎都没有做我需要或期望的事情,我做错了什么?我能得到一些帮助吗? 我也读了几页/帖子,但没有找到一个好的例子或正确

  • 问题内容: 我有一个复选框,可以切换某些行为,但是如果有人连续点击100次,我不想向服务器端发送100个请求。 到目前为止,这就是我所准备的(找到以下代码片段): 在我的文档准备功能中: 然后事件本身: 这是因为我将1500毫秒作为去抖动周期,所以如果您在1500毫秒内单击n次,它将仅向服务器发送最新状态。 但是,使用它会有副作用,现在我的其他事件的click事件被搞砸了。我在这里做错什么了吗?有

  • 很抱歉,如果这是我忽略的非常简单的事情,但我正在尝试制作一个组件,它基本上只将某些react路由器路由限制为具有活动令牌的用户。 看起来(正如预期的那样)只有“console.log(result)”执行了挂起的promise,但在最终结果中,我试图将一些逻辑编码到从后端给出的响应中(true或false),然后这些逻辑应该发送到privaterout组件,以确定是否应该将用户发送回登录,等等。。