{ "status": "FAIL", "code": "400002", "errorMessage": "Подпись для этого запроса недействительна." }Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 { "status": "FAIL", "code": "400002", "errorMessage": "Подпись для этого запроса недействительна." }

Сообщение Anonymous »

Я пытаюсь получить API «создать заказ» из API binance pay для осуществления платежей в моем приложении Kotlin для Android. Я следую документации API для создания полезных данных и подписи, но, к сожалению, она не работает.
Я получаю следующую ошибку: «errorMessage»: «Подпись для этого запроса недействительна».
Кто-нибудь может помочь?
private fun createSignature(payload: String, secretKey: String): String {
val sha512HMAC = Mac.getInstance("HmacSHA512")
val secretKeySpec =
SecretKeySpec(secretKey.toByteArray(), "HmacSHA512")
sha512HMAC.init(secretKeySpec)
val digest = sha512HMAC.doFinal(payload.toByteArray())
return digest.toHex()
}

val timestamp = System.currentTimeMillis() + clockOffset
val nonceStr = generateNonce()
val body = Gson().toJson(
OrderRequest(
Env("APP"),
merchantTradeNb,
0.02,
"USDT",
Goods("01", "D000", "7876763A3C", "phone", "Good new phone")
)
)
val payload = timestamp.toString() + "\n" + nonceStr + "\n" + body + "\n"

val signature: String = createSignature(
payload.toByteArray(Charsets.UTF_8).toString(), secretKey
).uppercase()

val retrofitData = retrofitBuilder.binanceApi.createOrder(
"application/json", timestamp, nonceStr, certSn, signature, body
)

retrofitData.enqueue(object : Callback {
override fun onResponse(
call: Call,
response: Response,
) {
response.body()
}

override fun onFailure(call: Call, t: Throwable) {
}
})

}

interface BinancePayApi {

@POST("/binancepay/openapi/v2/order")
fun createOrder(
@Header("Content-type") contentType: String,
@Header("BinancePay-Timestamp") timestamp: Long,
@Header("BinancePay-Nonce") nonce: String,
@Header("BinancePay-Certificate-SN") apiKey: String,
@Header("BinancePay-Signature") signature: String,
@Body request: String
): Call
}


Подробнее здесь: https://stackoverflow.com/questions/753 ... his-reques
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»