OKX 接口报错 {'msg': 'Invalid OK-ACCESS-TIMESTAMP', 'code': '50112'} 本质是请求头中的 OK-ACCESS-TIMESTAMP 格式或精度不合规,需严格满足 ISO 8601 UTC 毫秒级格式(如 2024-06-15T12:34:56.789Z),且与服务器时间偏差不得超过 ±5 秒。
okx 接口报错 `{'msg': 'invalid ok-access-timestamp', 'code': '50112'}` 本质是请求头中的 `ok-access-timestamp` 格式或精度不合规,需严格满足 iso 8601 utc 毫秒级格式(如 `2024-06-15t12:34:56.789z`),且与服务器时间偏差不得超过 ±5 秒。
该错误并非签名逻辑缺陷,而是时间戳生成环节存在两个关键问题:时区未强制对齐 UTC 和 毫秒位数/格式不符合 OKX 服务端校验要求。
在你的 Python 代码中,dt.datetime.now(dt.timezone.utc).isoformat("T", "milliseconds") + 'Z' 表面看似正确,但 isoformat() 在某些 Python 版本或系统环境下可能生成 2024-06-15T12:34:56.789000Z(含微秒),而 OKX 仅接受精确到毫秒的三位小数(即 .789Z,非 .789000Z)。此外,若本地系统时钟不同步,即使格式正确,也会因时间偏移超限被拒绝。
✅ 正确做法是:显式截断至毫秒,并用固定格式字符串拼接。推荐使用以下改进版 get_time():
import datetime as dt
import time
@staticmethod
def get_time() -> str:
# 获取当前 UTC 时间,截断至毫秒(丢弃微秒),再格式化为标准 ISO 8601 字符串
now = dt.datetime.now(dt.timezone.utc)
# 截断微秒:保留毫秒,清零微秒部分
now_ms = now - dt.timedelta(microseconds=now.microsecond % 1000)
# 格式化为 'YYYY-MM-DDTHH:MM:SS.SSSZ'(严格三位毫秒,无空格、无多余零)
return now_ms.strftime('%Y-%m-%dT%H:%M:%S.') + f'{now_ms.microsecond // 1000:03d}Z'
⚠️ 同时务必注意以下关键点:
- 时间同步:运行脚本前执行 sudo ntpdate -s time.apple.com(Linux/macOS)或启用 Windows 时间服务,确保系统时钟与 NTP 服务器误差
- 签名原文中的 timestamp 必须与 OK-ACCESS-TIMESTAMP 完全一致(包括大小写、Z 后缀、毫秒位数);
- OK-ACCESS-PASSPHRASE 和 OK-ACCESS-KEY 应使用 self. 实例变量(原代码中误用了全局变量 APIKEY/PASS),修正如下:
header['OK-ACCESS-KEY'] = self.apikey header['OK-ACCESS-PASSPHRASE'] = self.password header['OK-ACCESS-SIGN'] = self.signature(cur_time, request, endpoint, body, self.apisecret)
- 请求体 body 传入 signature() 前必须是原始 JSON 字符串(不可二次 str() 包裹),否则签名失效。应改为:
body_str = json.dumps(body) # 如 {"amt":"1.0","ccy":"SOL",...} header = self.get_header(request, endpoint, body_str) # ← 直接传 body_str response = requests.post(url, headers=header, data=body_str) # ← data 也用 body_str
? 小技巧:调试时可打印 cur_time 并手动比对 https://www.php.cn/link/604ebdb5dbb32745b0fb566c62de591b 的 UTC 时间,确认偏差是否在 5 秒内。
综上,50112 错误是典型的“时间戳失准”问题,解决核心在于:毫秒级精度控制 + UTC 强制对齐 + 系统时钟校准 + 签名与 Header 时间严格一致。修复后,签名认证即可稳定通过。
大量免费API接口:立即使用
涵盖生活服务API、金融科技API、企业工商API、等相关的API接口服务。免费API接口可安全、合规地连接上下游,为数据API应用能力赋能!











