0
我目前正試圖連接到CEX.IO比特幣交易所的websocket。 Websocket連接正常,但在進行身份驗證時,出現錯誤:Timestamp is not in 20sec range
。我不知道這個錯誤是什麼。Golang Gorilla CEX.IO Websocket驗證錯誤
測試用例1 & 2 for createSignature OK(https://cex.io/websocket-api#authentication)。
驗證Go代碼:
func toHmac256(message string, secret string) string {
key := []byte(secret)
h := hmac.New(sha256.New, key)
h.Write([]byte(message))
return strings.ToUpper(hex.EncodeToString(h.Sum(nil)))
}
func Signature() (string, string) {
nonce := time.Now().Unix() // Edit with Cerise Limón answer
message := strconv.FormatInt(nonce, 10) + "API-KEY"
signature := api.toHmac256(message, "SECRET-KEY")
return signature, nonce
}
'time.Now().Unix()' – LeMoussel
同樣的錯誤檢查你的系統時間是否正確。 –
Unix時間是自1970年1月1日(UTC)以來的秒數。我要求您檢查系統中的時鐘是否設置在正確時間的20秒內。 –