binance 2.0.20 → 2.0.21-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -41,23 +41,19 @@ export default abstract class BaseRestClient {
41
41
  putPrivate(endpoint: string, params?: any): GenericAPIResponse;
42
42
  delete(endpoint: string, params?: any): GenericAPIResponse;
43
43
  deletePrivate(endpoint: string, params?: any): GenericAPIResponse;
44
- private updateApiLimitState;
45
44
  /**
46
45
  * @private Make a HTTP request to a specific endpoint. Private endpoints are automatically signed.
47
46
  */
48
- _call(method: Method, endpoint: string, params?: any, isPrivate?: boolean, baseUrlOverride?: string, skipQs?: boolean): GenericAPIResponse;
47
+ _call(method: Method, endpoint: string, params?: any, isPrivate?: boolean, baseUrlOverride?: string): GenericAPIResponse;
49
48
  /**
50
49
  * @private generic handler to parse request exceptions
51
50
  */
52
51
  private parseException;
53
- /**
54
- * @private sign request and set recv window
55
- */
56
- signRequest(data: any, key?: string | undefined, secret?: string | undefined): Promise<any>;
52
+ private updateApiLimitState;
57
53
  /**
58
54
  * Trigger time sync and store promise
59
55
  */
60
- private syncTime;
56
+ syncTime(): Promise<void>;
61
57
  /**
62
58
  * Estimate drift based on client<->server latency
63
59
  */
@@ -13,8 +13,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  const axios_1 = __importDefault(require("axios"));
16
- const qs_1 = __importDefault(require("qs"));
17
- const node_support_1 = require("./node-support");
18
16
  const requestUtils_1 = require("./requestUtils");
19
17
  const beautifier_1 = __importDefault(require("./beautifier"));
20
18
  class BaseRestClient {
@@ -101,75 +99,32 @@ class BaseRestClient {
101
99
  deletePrivate(endpoint, params) {
102
100
  return this._call('DELETE', endpoint, params, true);
103
101
  }
104
- // TODO: cleanup?
105
- updateApiLimitState(responseHeaders, requestedUrl) {
106
- const delta = {};
107
- for (const headerKey in this.apiLimitTrackers) {
108
- const headerValue = responseHeaders[headerKey];
109
- const value = parseInt(headerValue);
110
- if (headerValue !== undefined && !isNaN(value)) {
111
- // TODO: track last seen by key? insetad of all? some keys not returned by some endpoints more useful in estimating whether reset should've happened
112
- this.apiLimitTrackers[headerKey] = value;
113
- delta[headerKey] = {
114
- updated: true,
115
- valueParsed: value,
116
- valueRaw: headerValue
117
- };
118
- }
119
- else {
120
- delta[headerKey] = {
121
- updated: false,
122
- valueParsed: value,
123
- valueRaw: headerValue
124
- };
125
- }
126
- }
127
- // console.log('responseHeaders: ', requestedUrl);
128
- // console.table(responseHeaders);
129
- // console.table(delta);
130
- this.apiLimitLastUpdated = new Date().getTime();
131
- }
132
102
  /**
133
103
  * @private Make a HTTP request to a specific endpoint. Private endpoints are automatically signed.
134
104
  */
135
- _call(method, endpoint, params, isPrivate, baseUrlOverride, skipQs) {
105
+ _call(method, endpoint, params, isPrivate, baseUrlOverride) {
136
106
  return __awaiter(this, void 0, void 0, function* () {
137
- let requestInfo = {
138
- params: params,
139
- serialisedParams: params,
140
- };
141
- if (isPrivate) {
142
- if (!this.key || !this.secret) {
143
- throw new Error('Private endpoints require api and private keys set');
144
- }
145
- requestInfo = yield this.signRequest(params);
107
+ const timestamp = Date.now() + (this.getTimeOffset() || 0);
108
+ if (isPrivate && (!this.key || !this.secret)) {
109
+ throw new Error('Private endpoints require api and private keys to be set');
146
110
  }
111
+ // Handles serialisation of params into query string (url?key1=value1&key2=value2), handles encoding of values, adds timestamp and signature to request.
112
+ const { serialisedParams, signature, requestBody } = yield requestUtils_1.getRequestSignature(params, this.key, this.secret, this.options.recvWindow, timestamp, this.options.strictParamValidation);
147
113
  const baseUrl = baseUrlOverride || this.baseUrl;
148
114
  const options = Object.assign(Object.assign({}, this.globalRequestOptions), { url: [baseUrl, endpoint].join('/'), method: method, json: true });
149
- if (method === 'GET' || method === 'DELETE') {
150
- options.params = requestInfo.params;
115
+ if (isPrivate) {
116
+ options.url += '?' + [serialisedParams, 'signature=' + signature].join('&');
117
+ }
118
+ else if (method === 'GET' || method === 'DELETE') {
119
+ options.params = params;
151
120
  }
152
121
  else {
153
- if (isPrivate) {
154
- const signed = yield this.signRequest(params);
155
- console.log('signed details: ', signed);
156
- options.url += '?' + [encodeURIComponent(signed.serialisedParams), 'timestamp=' + signed.timestamp, 'recvWindow=' + signed.recvWindow, 'signature=' + signed.signature].join('&');
157
- }
158
- else {
159
- options.data = qs_1.default.stringify(requestInfo.params);
160
- }
161
- // Requests should be x-www-form-urlencoded
162
- // TODO: optimise in the browser to use URLSearchParams
163
- // options.data = qs.stringify(encodeURIComponent(requestInfo.serialisedParams));
164
- // options.data = qs.stringify(requestInfo.params);
165
- // options.data = params;
166
- // options.url += '?' + qs.stringify(requestInfo.serialisedParams);
167
- // options.url += '?' + qs.stringify(encodeURIComponent(JSON.stringify(requestInfo.serialisedParams)));
122
+ options.data = requestUtils_1.serialiseParams(requestBody, this.options.strictParamValidation, true);
168
123
  }
169
- console.log('sending request: ', JSON.stringify({
170
- reqOptions: options,
171
- reqParams: params,
172
- }, null, 2));
124
+ // console.log('sending request: ', JSON.stringify({
125
+ // reqOptions: options,
126
+ // reqParams: params,
127
+ // }, null, 2));
173
128
  return axios_1.default(options).then(response => {
174
129
  this.updateApiLimitState(response.headers, options.url);
175
130
  if (response.status == 200) {
@@ -225,30 +180,33 @@ class BaseRestClient {
225
180
  requestOptions: Object.assign(Object.assign({}, this.options), { api_key: undefined, api_secret: undefined }),
226
181
  };
227
182
  }
228
- /**
229
- * @private sign request and set recv window
230
- */
231
- signRequest(data, key = this.key, secret = this.secret) {
232
- return __awaiter(this, void 0, void 0, function* () {
233
- const params = Object.assign(Object.assign({}, data), { timestamp: Date.now() + (this.timeOffset || 0) });
234
- // Optional, set to 5000 by default. Increase if timestamp/recvWindow errors are seen.
235
- if (this.options.recvWindow && !params.recvWindow) {
236
- params.recvWindow = this.options.recvWindow;
183
+ // TODO: cleanup?
184
+ updateApiLimitState(responseHeaders, requestedUrl) {
185
+ const delta = {};
186
+ for (const headerKey in this.apiLimitTrackers) {
187
+ const headerValue = responseHeaders[headerKey];
188
+ const value = parseInt(headerValue);
189
+ if (headerValue !== undefined && !isNaN(value)) {
190
+ // TODO: track last seen by key? insetad of all? some keys not returned by some endpoints more useful in estimating whether reset should've happened
191
+ this.apiLimitTrackers[headerKey] = value;
192
+ delta[headerKey] = {
193
+ updated: true,
194
+ valueParsed: value,
195
+ valueRaw: headerValue
196
+ };
237
197
  }
238
- if (key && secret) {
239
- const serialisedParams = requestUtils_1.serialiseParams(params, this.options.strictParamValidation);
240
- console.log('serialisedParams: ', serialisedParams);
241
- params.signature = yield node_support_1.signMessage(serialisedParams, secret);
242
- return {
243
- params,
244
- serialisedParams,
245
- timestamp: params.timestamp,
246
- signature: params.signature,
247
- recvWindow: params.recvWindow || 5000,
198
+ else {
199
+ delta[headerKey] = {
200
+ updated: false,
201
+ valueParsed: value,
202
+ valueRaw: headerValue
248
203
  };
249
204
  }
250
- return { params, serialisedParams: undefined };
251
- });
205
+ }
206
+ // console.log('responseHeaders: ', requestedUrl);
207
+ // console.table(responseHeaders);
208
+ // console.table(delta);
209
+ this.apiLimitLastUpdated = new Date().getTime();
252
210
  }
253
211
  /**
254
212
  * Trigger time sync and store promise
@@ -1 +1 @@
1
- {"version":3,"file":"BaseRestClient.js","sourceRoot":"","sources":["../../src/util/BaseRestClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseRestClient.js","sourceRoot":"","sources":["../../src/util/BaseRestClient.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,15 @@ export interface RestClientOptions {
20
20
  export declare type GenericAPIResponse<T = any> = Promise<T>;
21
21
  export declare function getOrderIdPrefix(network: BinanceBaseUrlKey): string;
22
22
  export declare function generateNewOrderId(network: BinanceBaseUrlKey): string;
23
- export declare function serialiseParams(params?: object, strict_validation?: boolean): string;
23
+ export declare function serialiseParams(params?: object, strict_validation?: boolean, encodeValues?: boolean): string;
24
+ export interface SignedRequestState {
25
+ requestBody: any;
26
+ serialisedParams: string | undefined;
27
+ timestamp?: number;
28
+ signature?: string;
29
+ recvWindow?: number;
30
+ }
31
+ export declare function getRequestSignature(data: any, key?: string, secret?: string, recvWindow?: number, timestamp?: number, strictParamValidation?: boolean): Promise<SignedRequestState>;
24
32
  export declare function getServerTimeEndpoint(urlKey: BinanceBaseUrlKey): string;
25
33
  export declare function getRestBaseUrl(clientType: BinanceBaseUrlKey, restInverseOptions: RestClientOptions): string;
26
34
  export declare function isPublicEndpoint(endpoint: string): boolean;
@@ -1,6 +1,16 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.appendEventMarket = exports.getWsKeyWithContext = exports.getContextFromWsKey = exports.appendEventIfMissing = exports.logInvalidOrderId = exports.isWsPong = exports.isPublicEndpoint = exports.getRestBaseUrl = exports.getServerTimeEndpoint = exports.serialiseParams = exports.generateNewOrderId = exports.getOrderIdPrefix = void 0;
12
+ exports.appendEventMarket = exports.getWsKeyWithContext = exports.getContextFromWsKey = exports.appendEventIfMissing = exports.logInvalidOrderId = exports.isWsPong = exports.isPublicEndpoint = exports.getRestBaseUrl = exports.getServerTimeEndpoint = exports.getRequestSignature = exports.serialiseParams = exports.generateNewOrderId = exports.getOrderIdPrefix = void 0;
13
+ const node_support_1 = require("./node-support");
4
14
  function getOrderIdPrefix(network) {
5
15
  switch (network) {
6
16
  case 'spot':
@@ -31,19 +41,42 @@ function generateNewOrderId(network) {
31
41
  return randomString;
32
42
  }
33
43
  exports.generateNewOrderId = generateNewOrderId;
34
- function serialiseParams(params = {}, strict_validation = false) {
44
+ function serialiseParams(params = {}, strict_validation = false, encodeValues = false) {
35
45
  return Object.keys(params)
36
46
  .map(key => {
37
47
  const value = params[key];
38
48
  if (strict_validation === true && typeof value === 'undefined') {
39
49
  throw new Error('Failed to sign API request due to undefined parameter');
40
50
  }
41
- return `${key}=${value}`;
51
+ const encodedValue = encodeValues ? encodeURIComponent(value) : value;
52
+ return `${key}=${encodedValue}`;
42
53
  })
43
54
  .join('&');
44
55
  }
45
56
  exports.serialiseParams = serialiseParams;
46
57
  ;
58
+ function getRequestSignature(data, key, secret, recvWindow, timestamp, strictParamValidation) {
59
+ var _a, _b;
60
+ return __awaiter(this, void 0, void 0, function* () {
61
+ // Optional, set to 5000 by default. Increase if timestamp/recvWindow errors are seen.
62
+ const requestRecvWindow = (_b = (_a = data === null || data === void 0 ? void 0 : data.recvWindow) !== null && _a !== void 0 ? _a : recvWindow) !== null && _b !== void 0 ? _b : 5000;
63
+ if (key && secret) {
64
+ const requestParams = Object.assign(Object.assign({}, data), { timestamp, recvWindow: requestRecvWindow });
65
+ const serialisedParams = serialiseParams(requestParams, strictParamValidation, true);
66
+ const signature = yield node_support_1.signMessage(serialisedParams, secret);
67
+ requestParams.signature = signature;
68
+ return {
69
+ requestBody: Object.assign({}, data),
70
+ serialisedParams,
71
+ timestamp: timestamp,
72
+ signature: signature,
73
+ recvWindow: requestRecvWindow,
74
+ };
75
+ }
76
+ return { requestBody: data, serialisedParams: undefined };
77
+ });
78
+ }
79
+ exports.getRequestSignature = getRequestSignature;
47
80
  const BINANCE_BASE_URLS = {
48
81
  // spot/margin/savings/mining
49
82
  spot: 'https://api.binance.com',
@@ -1 +1 @@
1
- {"version":3,"file":"requestUtils.js","sourceRoot":"","sources":["../../src/util/requestUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"requestUtils.js","sourceRoot":"","sources":["../../src/util/requestUtils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "binance",
3
- "version": "2.0.20",
3
+ "version": "2.0.21-beta.1",
4
4
  "description": "Node.js connector for Binance's REST APIs and WebSockets, with TypeScript & integration tests.",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
@@ -33,7 +33,6 @@
33
33
  "dependencies": {
34
34
  "axios": "^0.21.0",
35
35
  "isomorphic-ws": "^4.0.1",
36
- "qs": "^6.10.1",
37
36
  "ws": "^7.4.0"
38
37
  },
39
38
  "devDependencies": {