python - 带有身份验证的 API 请求:Python 的请求与 R 的 httr
问题描述
我是 API 新手。我想使用 R 的httr
库访问具有身份验证的 API,但我一直处于未授权状态。
一位同事使用 Python 的requests
库给了我一些代码,效果很好。但是,我尝试使用 R 的httr
库复制它并没有取得太大的成功。在网上环顾四周,并通过httr
文档,我认为使用该GET()
功能应该很容易,但它给了我401 (NotAuthorised)
状态。现在我什至不确定我是否应该使用GET()
或PUT()
与 Python 的请求一样使用。
Python 示例(工作正常):
import requests
IM_id = "aUser"
IM_pass = "aPassword"
DataAccess ={"username":IM_id,"password":IM_pass}
URL = 'https://io.aWebsite.live/integrate/1/session'
p = requests.put(URL,DataAccess)
p
<Response [200]>
IMkey = p.json()
print('your API token is ' + IMkey['apiToken'])
your API token is xxxx-xxxx-xxxx-xxx-xxxx
R示例(错误):
library(httr)
IM_id <- "aUser"
IM_pass <- "aPassword"
URL <- "https://io.aWebsite.live/integrate/1/session"
r <- GET(URL,authenticate(IM_id,IM_pass,type="basic"))
r
Response [https://io.aWebsite.live/integrate/1/session]
Date: 2019-06-29 23:12
Status: 401
Content-Type: <unknown>
<EMPTY BODY>
解决方案
推荐阅读
- c++ - 用`new`调用默认参数会导致内存泄漏吗?
- sql - 如何使用 SQLite 存储用户创建的列表?
- c# - 如何从C#中的项目获取到期日期
- c - 如何使用 mpirun 从命令行读取多个输入
- reactjs - React mobx 无法获得 observable 的值
- c# - 发布请求失败,因为实体说无法跟踪实体类型“WorkEntry”的实例,因为
- python - 如何设置最大数量。可以在 Django 项目中使用优惠券
- c# - 健康系统脚本未在 Unity 中运行;没有错误或 Debug.Log 语句弹出
- swift - 使用带范围的 for-in 循环时的性能问题
- python - 找不到键盘模块的键