You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将给定curl格式API请求转换为R语言httr包可调用代码

基于httr包的API调用实现

1. 登录POST接口调用

对应curl规范的POST请求,httr实现代码如下:

# 加载httr包
library(httr)

# 发起登录POST请求
login_resp <- POST(
  url = "https://api.com/api/login/adm",
  add_headers(
    "Content-Type" = "application/json",
    "Cookie" = "XXXXXXXXX" # 替换为实际可用的Cookie值
  ),
  body = list(
    usuario = "XXX", # 替换为实际登录用户名
    clave = "XXXXXXXXXXX" # 替换为实际登录密码
  ),
  encode = "json"
)

# 验证请求响应状态
http_status(login_resp)
# 解析接口返回内容(默认自动解析JSON为R列表)
login_result <- content(login_resp, "parsed")

2. 业务GET接口调用

对应curl规范的GET请求,httr实现代码如下:

# 发起GET请求
data_resp <- GET(
  url = "https://api-.com/api/XX/XX", # 替换为实际接口的完整路径
  add_headers(
    "Authorization" = "Bearer XXX_XXXX", # 替换为实际授权Token,可从登录接口返回结果中提取
    "Cookie" = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" # 替换为实际可用的Cookie值
  )
)

# 验证请求响应状态
http_status(data_resp)
# 解析接口返回内容
data_result <- content(data_resp, "parsed")

提示:若登录接口会返回有效授权Token,可直接从login_result中提取后传入GET请求的Authorization头,无需手动填写固定Token值。

其他可实现相同需求的R包
  • httr2:httr的官方迭代版本,语法对管道操作更友好,内置请求重试、错误自动校验等实用功能,是目前更推荐的新一代HTTP请求工具包
  • RCurl:R生态早期的HTTP客户端工具包,底层基于libcurl,功能覆盖全面,但语法相对繁琐,目前使用普及率已低于httr系列
  • crul:开源轻量HTTP请求包,对RESTful API适配性较好,支持异步请求,适合批量接口调用场景

内容的提问来源于stack exchange,提问作者Clara

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 16:36:03