币安报-1021时间戳错误,把等待时间调大就够了吗?

币安现货-1021可能来自请求超过有效窗口,也可能是客户端时间领先服务器过多。recvWindow不是网络请求的等待超时,扩大它不能修复所有时钟偏差,应同时检查时间单位与签名参数。

不够。币安现货API的-1021既可能表示请求时间戳超出recvWindow,也可能表示客户端时间领先服务器过多。只把recvWindow调大,无法消除所有时间校验错误。

请求有效期与网络等待不同

recvWindow表示这份签名请求允许保持有效的时间,单位固定为毫秒,默认5000,最大60000。它没有把客户端的网络等待时间延长到同样数值,也不表示下单后订单只会保留这么久。

timestamp可以用毫秒或微秒表达,但必须反映当前客户端时间;recvWindow仍按毫秒填写。把这两个字段误当成同一单位,或者直接使用秒级时间戳,都应列入参数核对范围。

时钟领先不能靠扩大窗口补救

服务器的校验条件同时约束时间戳不得领先服务器达到一秒,以及请求距当前服务器时间不得超过窗口。即使窗口给得很大,本机时钟明显走快仍可能被拒绝;转发撮合引擎前还会再次检查有效期。

排查时应检查系统时间同步、签名生成时刻、请求排队耗时和发送参数。若请求先签名再长时间等待发送,应重新生成符合当前时间的签名请求,不能只替换时间戳却保留旧签名。

在交易所接口排错里,-1021和签名无效的-1022是不同错误。使用时间核对工具时,重点检查实际偏差与单位;窗口设到最大值,也不能证明链路已经恢复正常。

原创文章,作者:eastbtc,如若转载,请注明出处:https://www.eastbtc.com/exchange/29497.html

eastbtceastbtc
上一篇 3天前
下一篇 3天前

相关推荐