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

R语言httr包GET请求因时间格式报错问题求助

问题解决方法

你遇到的问题根源是URL里的日期参数包含空格——浏览器会自动对空格做URL编码(转成%20),但httr::GET不会自动处理这类未编码的特殊字符,所以触发了格式错误提示。

两种可行的解决办法:

1. 手动编码URL中的空格

把start_date=2022-06-01 00:00:00和end_date=2022-09-27 00:00:00里的空格替换成%20,修改后的完整URL如下:

https://api.ecowitt.net/api/v3/device/history?application_key=XXXX&api_key=-YYY&mac=ZZZ&start_date=2022-06-01%2000:00:00&end_date=2022-09-27%2000:00:00&cycle_type=30min&call_back=outdoor,indoor.humidity

再用这个URL执行httr::GET就能正常请求。

2. 用httr::GET的query参数构建请求(更推荐)

不要手动拼接完整URL,把参数放进query列表里,httr会自动帮你处理URL编码,代码示例:

library(httr)

response <- GET(
  url = "https://api.ecowitt.net/api/v3/device/history",
  query = list(
    application_key = "XXXX",
    api_key = "-YYY",
    mac = "ZZZ",
    start_date = "2022-06-01 00:00:00",
    end_date = "2022-09-27 00:00:00",
    cycle_type = "30min",
    call_back = "outdoor,indoor.humidity"
  )
)

# 查看返回内容
content(response, "text")

这种方式能避免手动拼接URL时的编码失误,更稳妥。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 06:10:31