无效签名错误 “Signature for this request is not valid.”

问题:
为什么会收到无效签名错误 ?

{“code":-1022,"msg":"Signature for this request is not valid."}

答案:

帮助这问题不简单因为不适合分享使用过的的API密钥/秘密密钥组合,不过可以按照下面的一些最常见的原因作为指导:

  • 未设置密钥;
  • 密钥与API密钥不匹配;
  • 发送到服务器的参数没有值:
    • /api/v3/order?orderId=&timestamp=xxxxx&signature=xxxx 会出现此错误
  • 发送的url没有时间戳和签名(按此顺序)作为最后参数:
    • /sapi/v1/sub-account/status?email=xxx&timestamp=xxx&recvWindow=10000&signature=xxx (真确方式 )
  • 签名未由SHA256签名;
  • 如果在使用SDK/library,可以打印出原始HTTP请求URL或发送到API服务器的POST正文确认是否:
    • X-MBX-APIKEY设置正确
    • 参数正确
    • 有附加签名