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

R调用ORATS API报parse_url错误length(url)==1 is not TRUE解决方案问询

问题根源

原代码中使用paste(tickers, sep = ",")处理字符向量时,仅会对多组输入参数做分隔拼接,不会将单个向量的多个元素合并为一个字符串,最终会生成和tickers向量长度一致的多个URL,触发parse_url的长度校验报错。

修改方案

将paste(tickers, sep = ",")替换为paste(tickers, collapse = ",")即可,collapse参数会将向量的所有元素按指定分隔符合并为单个字符串,同时兼容单个代码的输入场景。

修改后的完整函数

orats <- function(data="cores/general", tickers, token){
  # 字符向量转为逗号分隔的单个字符串
  t1 <- paste(tickers, collapse = ",")
  x1 <- GET(paste("https://api.orats.io/data/",data,"?ticker=",t1,sep=""),
            add_headers(Authorization = token))
  x2 <- content(x1)[[1]]
  data.frame(t(sapply(x2, function(x) x[1:max(lengths(x2))])))
}

兼容测试场景

  • 传入单代码字符串:orats(tickers = "AAPL", token = "你的接口token") 运行正常
  • 传入多代码向量:orats(tickers = c("AAPL", "MSFT"), token = "你的接口token") 运行正常
  • 传入多代码逗号分隔字符串:orats(tickers = "AAPL,MSFT", token = "你的接口token") 运行正常

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.14 02:27:01