· 4 years ago · Apr 18, 2021, 06:46 PM
1const crypto = require("crypto-js");
2
3const apiKey = "blablabla"; /* User API Key */
4const apiSecret = "blablabla"; /* User API Secret */
5const date = JSON.stringify(Date.now());
6
7const signRequest = (request, apiKey, apiSecret) => {
8 const { id, method, api_key, params, nonce } = request;
9
10 const paramsString =
11 params == null
12 ? ""
13 : Object.keys(params)
14 .sort()
15 .reduce((a, b) => {
16 return a + b + params[b];
17 }, "");
18
19 const sigPayload = method + id + apiKey + paramsString + nonce;
20 request.api_key = apiKey;
21 request.sig = crypto
22 .HmacSHA256(sigPayload, apiSecret)
23 .toString(crypto.enc.Hex);
24
25 return request;
26};
27
28let requestOK = {
29 id:11,
30 method: "private/get-open-orders",
31 params: {},
32 nonce: date
33}
34
35let request = {
36 id:11,
37 method: "private/get-withdrawal-history",
38 params: {},
39 nonce: date
40}
41
42const requestBody = JSON.stringify(signRequest(request, apiKey, apiSecret));
43console.log(request);
44
45console.log(requestBody);