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

调用Gemini REST API获取FX汇率时,时间戳格式报错求助

解决Gemini FX汇率API的"无效DateTime"错误

问题根源

报错的核心是两个错误:

  • 时间戳传递方式错误:Gemini v2/fxrate端点的时间戳是查询参数(timestamp),而非路径参数。你把时间戳放在URL路径末尾,不符合API的参数规则。
  • 请求头request字段不匹配:Gemini API要求请求头里的request值必须和完整请求路径(包括查询参数)完全一致,你当前只写了/v2/fxrate,和实际请求路径不符。

修正后的代码

import requests

def create_headers(payload):
    # 假设此函数已正确处理API签名逻辑(如X-GEMINI-APIKEY、签名头等)
    headers = {}
    # 你的签名生成逻辑...
    return headers

base_url = "https://api.gemini.com"
# 基础路径:/v2/fxrate/{base}/{quote}
fx_path = '/v2/fxrate/gbpusd'
timestamp = 1495127793000
# 拼接完整URL,将时间戳作为查询参数传入
fx_url = f"{base_url}{fx_path}?timestamp={timestamp}"
# 更新request字段为包含查询参数的完整路径
fxpayload =  {
    "request": f"{fx_path}?timestamp={timestamp}",
    # 按需补充nonce等其他必填payload字段
}
fxheaders = create_headers(fxpayload)
response = requests.get(fx_url, headers=fxheaders)
print(response.json())

关键说明

  1. 参数位置修正:按照API要求,timestamp需以查询参数形式放在URL的?之后,格式为?timestamp=1495127793000。
  2. 请求头request字段对齐:必须和实际请求的完整路径(含查询参数)完全一致,否则API会验证失败。
  3. 时间戳格式:你使用的毫秒级整数是符合要求的,只要传递方式正确即可生效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 23:50:26