@zym-test-zerog/apiclient 1.0.3 → 1.0.4
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.
- package/dist/index.d.ts +0 -1
- package/dist/index.js +335 -122
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +335 -122
- package/dist/index.mjs.map +1 -1
- package/package.json +4 -2
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -117,6 +117,333 @@ class Logger {
|
|
|
117
117
|
}
|
|
118
118
|
const logger = new Logger();
|
|
119
119
|
|
|
120
|
+
function getDefaultExportFromCjs (x) {
|
|
121
|
+
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
var md5$1 = {exports: {}};
|
|
125
|
+
|
|
126
|
+
var crypt = {exports: {}};
|
|
127
|
+
|
|
128
|
+
(function() {
|
|
129
|
+
var base64map
|
|
130
|
+
= 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',
|
|
131
|
+
|
|
132
|
+
crypt$1 = {
|
|
133
|
+
// Bit-wise rotation left
|
|
134
|
+
rotl: function(n, b) {
|
|
135
|
+
return (n << b) | (n >>> (32 - b));
|
|
136
|
+
},
|
|
137
|
+
|
|
138
|
+
// Bit-wise rotation right
|
|
139
|
+
rotr: function(n, b) {
|
|
140
|
+
return (n << (32 - b)) | (n >>> b);
|
|
141
|
+
},
|
|
142
|
+
|
|
143
|
+
// Swap big-endian to little-endian and vice versa
|
|
144
|
+
endian: function(n) {
|
|
145
|
+
// If number given, swap endian
|
|
146
|
+
if (n.constructor == Number) {
|
|
147
|
+
return crypt$1.rotl(n, 8) & 0x00FF00FF | crypt$1.rotl(n, 24) & 0xFF00FF00;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
// Else, assume array and swap all items
|
|
151
|
+
for (var i = 0; i < n.length; i++)
|
|
152
|
+
n[i] = crypt$1.endian(n[i]);
|
|
153
|
+
return n;
|
|
154
|
+
},
|
|
155
|
+
|
|
156
|
+
// Generate an array of any length of random bytes
|
|
157
|
+
randomBytes: function(n) {
|
|
158
|
+
for (var bytes = []; n > 0; n--)
|
|
159
|
+
bytes.push(Math.floor(Math.random() * 256));
|
|
160
|
+
return bytes;
|
|
161
|
+
},
|
|
162
|
+
|
|
163
|
+
// Convert a byte array to big-endian 32-bit words
|
|
164
|
+
bytesToWords: function(bytes) {
|
|
165
|
+
for (var words = [], i = 0, b = 0; i < bytes.length; i++, b += 8)
|
|
166
|
+
words[b >>> 5] |= bytes[i] << (24 - b % 32);
|
|
167
|
+
return words;
|
|
168
|
+
},
|
|
169
|
+
|
|
170
|
+
// Convert big-endian 32-bit words to a byte array
|
|
171
|
+
wordsToBytes: function(words) {
|
|
172
|
+
for (var bytes = [], b = 0; b < words.length * 32; b += 8)
|
|
173
|
+
bytes.push((words[b >>> 5] >>> (24 - b % 32)) & 0xFF);
|
|
174
|
+
return bytes;
|
|
175
|
+
},
|
|
176
|
+
|
|
177
|
+
// Convert a byte array to a hex string
|
|
178
|
+
bytesToHex: function(bytes) {
|
|
179
|
+
for (var hex = [], i = 0; i < bytes.length; i++) {
|
|
180
|
+
hex.push((bytes[i] >>> 4).toString(16));
|
|
181
|
+
hex.push((bytes[i] & 0xF).toString(16));
|
|
182
|
+
}
|
|
183
|
+
return hex.join('');
|
|
184
|
+
},
|
|
185
|
+
|
|
186
|
+
// Convert a hex string to a byte array
|
|
187
|
+
hexToBytes: function(hex) {
|
|
188
|
+
for (var bytes = [], c = 0; c < hex.length; c += 2)
|
|
189
|
+
bytes.push(parseInt(hex.substr(c, 2), 16));
|
|
190
|
+
return bytes;
|
|
191
|
+
},
|
|
192
|
+
|
|
193
|
+
// Convert a byte array to a base-64 string
|
|
194
|
+
bytesToBase64: function(bytes) {
|
|
195
|
+
for (var base64 = [], i = 0; i < bytes.length; i += 3) {
|
|
196
|
+
var triplet = (bytes[i] << 16) | (bytes[i + 1] << 8) | bytes[i + 2];
|
|
197
|
+
for (var j = 0; j < 4; j++)
|
|
198
|
+
if (i * 8 + j * 6 <= bytes.length * 8)
|
|
199
|
+
base64.push(base64map.charAt((triplet >>> 6 * (3 - j)) & 0x3F));
|
|
200
|
+
else
|
|
201
|
+
base64.push('=');
|
|
202
|
+
}
|
|
203
|
+
return base64.join('');
|
|
204
|
+
},
|
|
205
|
+
|
|
206
|
+
// Convert a base-64 string to a byte array
|
|
207
|
+
base64ToBytes: function(base64) {
|
|
208
|
+
// Remove non-base-64 characters
|
|
209
|
+
base64 = base64.replace(/[^A-Z0-9+\/]/ig, '');
|
|
210
|
+
|
|
211
|
+
for (var bytes = [], i = 0, imod4 = 0; i < base64.length;
|
|
212
|
+
imod4 = ++i % 4) {
|
|
213
|
+
if (imod4 == 0) continue;
|
|
214
|
+
bytes.push(((base64map.indexOf(base64.charAt(i - 1))
|
|
215
|
+
& (Math.pow(2, -2 * imod4 + 8) - 1)) << (imod4 * 2))
|
|
216
|
+
| (base64map.indexOf(base64.charAt(i)) >>> (6 - imod4 * 2)));
|
|
217
|
+
}
|
|
218
|
+
return bytes;
|
|
219
|
+
}
|
|
220
|
+
};
|
|
221
|
+
|
|
222
|
+
crypt.exports = crypt$1;
|
|
223
|
+
})();
|
|
224
|
+
|
|
225
|
+
var cryptExports = crypt.exports;
|
|
226
|
+
|
|
227
|
+
var charenc = {
|
|
228
|
+
// UTF-8 encoding
|
|
229
|
+
utf8: {
|
|
230
|
+
// Convert a string to a byte array
|
|
231
|
+
stringToBytes: function(str) {
|
|
232
|
+
return charenc.bin.stringToBytes(unescape(encodeURIComponent(str)));
|
|
233
|
+
},
|
|
234
|
+
|
|
235
|
+
// Convert a byte array to a string
|
|
236
|
+
bytesToString: function(bytes) {
|
|
237
|
+
return decodeURIComponent(escape(charenc.bin.bytesToString(bytes)));
|
|
238
|
+
}
|
|
239
|
+
},
|
|
240
|
+
|
|
241
|
+
// Binary encoding
|
|
242
|
+
bin: {
|
|
243
|
+
// Convert a string to a byte array
|
|
244
|
+
stringToBytes: function(str) {
|
|
245
|
+
for (var bytes = [], i = 0; i < str.length; i++)
|
|
246
|
+
bytes.push(str.charCodeAt(i) & 0xFF);
|
|
247
|
+
return bytes;
|
|
248
|
+
},
|
|
249
|
+
|
|
250
|
+
// Convert a byte array to a string
|
|
251
|
+
bytesToString: function(bytes) {
|
|
252
|
+
for (var str = [], i = 0; i < bytes.length; i++)
|
|
253
|
+
str.push(String.fromCharCode(bytes[i]));
|
|
254
|
+
return str.join('');
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
};
|
|
258
|
+
|
|
259
|
+
var charenc_1 = charenc;
|
|
260
|
+
|
|
261
|
+
/*!
|
|
262
|
+
* Determine if an object is a Buffer
|
|
263
|
+
*
|
|
264
|
+
* @author Feross Aboukhadijeh <https://feross.org>
|
|
265
|
+
* @license MIT
|
|
266
|
+
*/
|
|
267
|
+
|
|
268
|
+
// The _isBuffer check is for Safari 5-7 support, because it's missing
|
|
269
|
+
// Object.prototype.constructor. Remove this eventually
|
|
270
|
+
var isBuffer_1 = function (obj) {
|
|
271
|
+
return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer)
|
|
272
|
+
};
|
|
273
|
+
|
|
274
|
+
function isBuffer (obj) {
|
|
275
|
+
return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
// For Node v0.10 support. Remove this eventually.
|
|
279
|
+
function isSlowBuffer (obj) {
|
|
280
|
+
return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0))
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
(function(){
|
|
284
|
+
var crypt = cryptExports,
|
|
285
|
+
utf8 = charenc_1.utf8,
|
|
286
|
+
isBuffer = isBuffer_1,
|
|
287
|
+
bin = charenc_1.bin,
|
|
288
|
+
|
|
289
|
+
// The core
|
|
290
|
+
md5 = function (message, options) {
|
|
291
|
+
// Convert to byte array
|
|
292
|
+
if (message.constructor == String)
|
|
293
|
+
if (options && options.encoding === 'binary')
|
|
294
|
+
message = bin.stringToBytes(message);
|
|
295
|
+
else
|
|
296
|
+
message = utf8.stringToBytes(message);
|
|
297
|
+
else if (isBuffer(message))
|
|
298
|
+
message = Array.prototype.slice.call(message, 0);
|
|
299
|
+
else if (!Array.isArray(message) && message.constructor !== Uint8Array)
|
|
300
|
+
message = message.toString();
|
|
301
|
+
// else, assume byte array already
|
|
302
|
+
|
|
303
|
+
var m = crypt.bytesToWords(message),
|
|
304
|
+
l = message.length * 8,
|
|
305
|
+
a = 1732584193,
|
|
306
|
+
b = -271733879,
|
|
307
|
+
c = -1732584194,
|
|
308
|
+
d = 271733878;
|
|
309
|
+
|
|
310
|
+
// Swap endian
|
|
311
|
+
for (var i = 0; i < m.length; i++) {
|
|
312
|
+
m[i] = ((m[i] << 8) | (m[i] >>> 24)) & 0x00FF00FF |
|
|
313
|
+
((m[i] << 24) | (m[i] >>> 8)) & 0xFF00FF00;
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
// Padding
|
|
317
|
+
m[l >>> 5] |= 0x80 << (l % 32);
|
|
318
|
+
m[(((l + 64) >>> 9) << 4) + 14] = l;
|
|
319
|
+
|
|
320
|
+
// Method shortcuts
|
|
321
|
+
var FF = md5._ff,
|
|
322
|
+
GG = md5._gg,
|
|
323
|
+
HH = md5._hh,
|
|
324
|
+
II = md5._ii;
|
|
325
|
+
|
|
326
|
+
for (var i = 0; i < m.length; i += 16) {
|
|
327
|
+
|
|
328
|
+
var aa = a,
|
|
329
|
+
bb = b,
|
|
330
|
+
cc = c,
|
|
331
|
+
dd = d;
|
|
332
|
+
|
|
333
|
+
a = FF(a, b, c, d, m[i+ 0], 7, -680876936);
|
|
334
|
+
d = FF(d, a, b, c, m[i+ 1], 12, -389564586);
|
|
335
|
+
c = FF(c, d, a, b, m[i+ 2], 17, 606105819);
|
|
336
|
+
b = FF(b, c, d, a, m[i+ 3], 22, -1044525330);
|
|
337
|
+
a = FF(a, b, c, d, m[i+ 4], 7, -176418897);
|
|
338
|
+
d = FF(d, a, b, c, m[i+ 5], 12, 1200080426);
|
|
339
|
+
c = FF(c, d, a, b, m[i+ 6], 17, -1473231341);
|
|
340
|
+
b = FF(b, c, d, a, m[i+ 7], 22, -45705983);
|
|
341
|
+
a = FF(a, b, c, d, m[i+ 8], 7, 1770035416);
|
|
342
|
+
d = FF(d, a, b, c, m[i+ 9], 12, -1958414417);
|
|
343
|
+
c = FF(c, d, a, b, m[i+10], 17, -42063);
|
|
344
|
+
b = FF(b, c, d, a, m[i+11], 22, -1990404162);
|
|
345
|
+
a = FF(a, b, c, d, m[i+12], 7, 1804603682);
|
|
346
|
+
d = FF(d, a, b, c, m[i+13], 12, -40341101);
|
|
347
|
+
c = FF(c, d, a, b, m[i+14], 17, -1502002290);
|
|
348
|
+
b = FF(b, c, d, a, m[i+15], 22, 1236535329);
|
|
349
|
+
|
|
350
|
+
a = GG(a, b, c, d, m[i+ 1], 5, -165796510);
|
|
351
|
+
d = GG(d, a, b, c, m[i+ 6], 9, -1069501632);
|
|
352
|
+
c = GG(c, d, a, b, m[i+11], 14, 643717713);
|
|
353
|
+
b = GG(b, c, d, a, m[i+ 0], 20, -373897302);
|
|
354
|
+
a = GG(a, b, c, d, m[i+ 5], 5, -701558691);
|
|
355
|
+
d = GG(d, a, b, c, m[i+10], 9, 38016083);
|
|
356
|
+
c = GG(c, d, a, b, m[i+15], 14, -660478335);
|
|
357
|
+
b = GG(b, c, d, a, m[i+ 4], 20, -405537848);
|
|
358
|
+
a = GG(a, b, c, d, m[i+ 9], 5, 568446438);
|
|
359
|
+
d = GG(d, a, b, c, m[i+14], 9, -1019803690);
|
|
360
|
+
c = GG(c, d, a, b, m[i+ 3], 14, -187363961);
|
|
361
|
+
b = GG(b, c, d, a, m[i+ 8], 20, 1163531501);
|
|
362
|
+
a = GG(a, b, c, d, m[i+13], 5, -1444681467);
|
|
363
|
+
d = GG(d, a, b, c, m[i+ 2], 9, -51403784);
|
|
364
|
+
c = GG(c, d, a, b, m[i+ 7], 14, 1735328473);
|
|
365
|
+
b = GG(b, c, d, a, m[i+12], 20, -1926607734);
|
|
366
|
+
|
|
367
|
+
a = HH(a, b, c, d, m[i+ 5], 4, -378558);
|
|
368
|
+
d = HH(d, a, b, c, m[i+ 8], 11, -2022574463);
|
|
369
|
+
c = HH(c, d, a, b, m[i+11], 16, 1839030562);
|
|
370
|
+
b = HH(b, c, d, a, m[i+14], 23, -35309556);
|
|
371
|
+
a = HH(a, b, c, d, m[i+ 1], 4, -1530992060);
|
|
372
|
+
d = HH(d, a, b, c, m[i+ 4], 11, 1272893353);
|
|
373
|
+
c = HH(c, d, a, b, m[i+ 7], 16, -155497632);
|
|
374
|
+
b = HH(b, c, d, a, m[i+10], 23, -1094730640);
|
|
375
|
+
a = HH(a, b, c, d, m[i+13], 4, 681279174);
|
|
376
|
+
d = HH(d, a, b, c, m[i+ 0], 11, -358537222);
|
|
377
|
+
c = HH(c, d, a, b, m[i+ 3], 16, -722521979);
|
|
378
|
+
b = HH(b, c, d, a, m[i+ 6], 23, 76029189);
|
|
379
|
+
a = HH(a, b, c, d, m[i+ 9], 4, -640364487);
|
|
380
|
+
d = HH(d, a, b, c, m[i+12], 11, -421815835);
|
|
381
|
+
c = HH(c, d, a, b, m[i+15], 16, 530742520);
|
|
382
|
+
b = HH(b, c, d, a, m[i+ 2], 23, -995338651);
|
|
383
|
+
|
|
384
|
+
a = II(a, b, c, d, m[i+ 0], 6, -198630844);
|
|
385
|
+
d = II(d, a, b, c, m[i+ 7], 10, 1126891415);
|
|
386
|
+
c = II(c, d, a, b, m[i+14], 15, -1416354905);
|
|
387
|
+
b = II(b, c, d, a, m[i+ 5], 21, -57434055);
|
|
388
|
+
a = II(a, b, c, d, m[i+12], 6, 1700485571);
|
|
389
|
+
d = II(d, a, b, c, m[i+ 3], 10, -1894986606);
|
|
390
|
+
c = II(c, d, a, b, m[i+10], 15, -1051523);
|
|
391
|
+
b = II(b, c, d, a, m[i+ 1], 21, -2054922799);
|
|
392
|
+
a = II(a, b, c, d, m[i+ 8], 6, 1873313359);
|
|
393
|
+
d = II(d, a, b, c, m[i+15], 10, -30611744);
|
|
394
|
+
c = II(c, d, a, b, m[i+ 6], 15, -1560198380);
|
|
395
|
+
b = II(b, c, d, a, m[i+13], 21, 1309151649);
|
|
396
|
+
a = II(a, b, c, d, m[i+ 4], 6, -145523070);
|
|
397
|
+
d = II(d, a, b, c, m[i+11], 10, -1120210379);
|
|
398
|
+
c = II(c, d, a, b, m[i+ 2], 15, 718787259);
|
|
399
|
+
b = II(b, c, d, a, m[i+ 9], 21, -343485551);
|
|
400
|
+
|
|
401
|
+
a = (a + aa) >>> 0;
|
|
402
|
+
b = (b + bb) >>> 0;
|
|
403
|
+
c = (c + cc) >>> 0;
|
|
404
|
+
d = (d + dd) >>> 0;
|
|
405
|
+
}
|
|
406
|
+
|
|
407
|
+
return crypt.endian([a, b, c, d]);
|
|
408
|
+
};
|
|
409
|
+
|
|
410
|
+
// Auxiliary functions
|
|
411
|
+
md5._ff = function (a, b, c, d, x, s, t) {
|
|
412
|
+
var n = a + (b & c | ~b & d) + (x >>> 0) + t;
|
|
413
|
+
return ((n << s) | (n >>> (32 - s))) + b;
|
|
414
|
+
};
|
|
415
|
+
md5._gg = function (a, b, c, d, x, s, t) {
|
|
416
|
+
var n = a + (b & d | c & ~d) + (x >>> 0) + t;
|
|
417
|
+
return ((n << s) | (n >>> (32 - s))) + b;
|
|
418
|
+
};
|
|
419
|
+
md5._hh = function (a, b, c, d, x, s, t) {
|
|
420
|
+
var n = a + (b ^ c ^ d) + (x >>> 0) + t;
|
|
421
|
+
return ((n << s) | (n >>> (32 - s))) + b;
|
|
422
|
+
};
|
|
423
|
+
md5._ii = function (a, b, c, d, x, s, t) {
|
|
424
|
+
var n = a + (c ^ (b | ~d)) + (x >>> 0) + t;
|
|
425
|
+
return ((n << s) | (n >>> (32 - s))) + b;
|
|
426
|
+
};
|
|
427
|
+
|
|
428
|
+
// Package private blocksize
|
|
429
|
+
md5._blocksize = 16;
|
|
430
|
+
md5._digestsize = 16;
|
|
431
|
+
|
|
432
|
+
md5$1.exports = function (message, options) {
|
|
433
|
+
if (message === undefined || message === null)
|
|
434
|
+
throw new Error('Illegal argument ' + message);
|
|
435
|
+
|
|
436
|
+
var digestbytes = crypt.wordsToBytes(md5(message, options));
|
|
437
|
+
return options && options.asBytes ? digestbytes :
|
|
438
|
+
options && options.asString ? bin.bytesToString(digestbytes) :
|
|
439
|
+
crypt.bytesToHex(digestbytes);
|
|
440
|
+
};
|
|
441
|
+
|
|
442
|
+
})();
|
|
443
|
+
|
|
444
|
+
var md5Exports = md5$1.exports;
|
|
445
|
+
var md5 = /*@__PURE__*/getDefaultExportFromCjs(md5Exports);
|
|
446
|
+
|
|
120
447
|
class SignGenerator {
|
|
121
448
|
constructor(config) {
|
|
122
449
|
this.config = {
|
|
@@ -202,129 +529,9 @@ class SignGenerator {
|
|
|
202
529
|
return signString.toLowerCase();
|
|
203
530
|
}
|
|
204
531
|
hash(str) {
|
|
205
|
-
//
|
|
532
|
+
// 使用第三方md5库生成MD5哈希,支持浏览器和Node.js环境
|
|
206
533
|
const input = this.config.salt ? this.config.salt + str : str;
|
|
207
|
-
return
|
|
208
|
-
}
|
|
209
|
-
// 纯JavaScript MD5实现
|
|
210
|
-
md5(message) {
|
|
211
|
-
// MD5常量
|
|
212
|
-
const K = [
|
|
213
|
-
0xd76aa478, 0xe8c7b756, 0x242070db, 0xc1bdceee,
|
|
214
|
-
0xf57c0faf, 0x4787c62a, 0xa8304613, 0xfd469501,
|
|
215
|
-
0x698098d8, 0x8b44f7af, 0xffff5bb1, 0x895cd7be,
|
|
216
|
-
0x6b901122, 0xfd987193, 0xa679438e, 0x49b40821,
|
|
217
|
-
0xf61e2562, 0xc040b340, 0x265e5a51, 0xe9b6c7aa,
|
|
218
|
-
0xd62f105d, 0x02441453, 0xd8a1e681, 0xe7d3fbc8,
|
|
219
|
-
0x21e1cde6, 0xc33707d6, 0xf4d50d87, 0x455a14ed,
|
|
220
|
-
0xa9e3e905, 0xfcefa3f8, 0x676f02d9, 0x8d2a4c8a,
|
|
221
|
-
0xfffa3942, 0x8771f681, 0x6d9d6122, 0xfde5380c,
|
|
222
|
-
0xa4beea44, 0x4bdecfa9, 0xf6bb4b60, 0xbebfbc70,
|
|
223
|
-
0x289b7ec6, 0xeaa127fa, 0xd4ef3085, 0x04881d05,
|
|
224
|
-
0xd9d4d039, 0xe6db99e5, 0x1fa27cf8, 0xc4ac5665,
|
|
225
|
-
0xf4292244, 0x432aff97, 0xab9423a7, 0xfc93a039,
|
|
226
|
-
0x655b59c3, 0x8f0ccc92, 0xffeff47d, 0x85845dd1,
|
|
227
|
-
0x6fa87e4f, 0xfe2ce6e0, 0xa3014314, 0x4e0811a1,
|
|
228
|
-
0xf7537e82, 0xbd3af235, 0x2ad7d2bb, 0xeb86d391
|
|
229
|
-
];
|
|
230
|
-
// 左旋转函数
|
|
231
|
-
const leftRotate = (x, c) => {
|
|
232
|
-
return (x << c) | (x >>> (32 - c));
|
|
233
|
-
};
|
|
234
|
-
// 将字符串转换为字节数组
|
|
235
|
-
const utf8Encode = (str) => {
|
|
236
|
-
const bytes = [];
|
|
237
|
-
for (let i = 0; i < str.length; i++) {
|
|
238
|
-
const charCode = str.charCodeAt(i);
|
|
239
|
-
if (charCode < 128) {
|
|
240
|
-
bytes.push(charCode);
|
|
241
|
-
}
|
|
242
|
-
else if (charCode < 2048) {
|
|
243
|
-
bytes.push((charCode >> 6) | 192);
|
|
244
|
-
bytes.push((charCode & 63) | 128);
|
|
245
|
-
}
|
|
246
|
-
else if (charCode < 65536) {
|
|
247
|
-
bytes.push((charCode >> 12) | 224);
|
|
248
|
-
bytes.push(((charCode >> 6) & 63) | 128);
|
|
249
|
-
bytes.push((charCode & 63) | 128);
|
|
250
|
-
}
|
|
251
|
-
else {
|
|
252
|
-
bytes.push((charCode >> 18) | 240);
|
|
253
|
-
bytes.push(((charCode >> 12) & 63) | 128);
|
|
254
|
-
bytes.push(((charCode >> 6) & 63) | 128);
|
|
255
|
-
bytes.push((charCode & 63) | 128);
|
|
256
|
-
}
|
|
257
|
-
}
|
|
258
|
-
return bytes;
|
|
259
|
-
};
|
|
260
|
-
// 初始化变量
|
|
261
|
-
let a0 = 0x67452301;
|
|
262
|
-
let b0 = 0xefcdab89;
|
|
263
|
-
let c0 = 0x98badcfe;
|
|
264
|
-
let d0 = 0x10325476;
|
|
265
|
-
// 处理输入
|
|
266
|
-
const bytes = utf8Encode(message);
|
|
267
|
-
const originalLength = bytes.length * 8;
|
|
268
|
-
// 添加填充
|
|
269
|
-
bytes.push(0x80);
|
|
270
|
-
while ((bytes.length * 8) % 512 !== 448) {
|
|
271
|
-
bytes.push(0x00);
|
|
272
|
-
}
|
|
273
|
-
// 添加长度
|
|
274
|
-
for (let i = 0; i < 8; i++) {
|
|
275
|
-
bytes.push((originalLength >>> (i * 8)) & 0xff);
|
|
276
|
-
}
|
|
277
|
-
// 处理512位块
|
|
278
|
-
for (let i = 0; i < bytes.length; i += 64) {
|
|
279
|
-
const w = [];
|
|
280
|
-
for (let j = 0; j < 16; j++) {
|
|
281
|
-
w[j] = ((bytes[i + j * 4] << 24) |
|
|
282
|
-
(bytes[i + j * 4 + 1] << 16) |
|
|
283
|
-
(bytes[i + j * 4 + 2] << 8) |
|
|
284
|
-
bytes[i + j * 4 + 3]);
|
|
285
|
-
}
|
|
286
|
-
let a = a0;
|
|
287
|
-
let b = b0;
|
|
288
|
-
let c = c0;
|
|
289
|
-
let d = d0;
|
|
290
|
-
for (let j = 0; j < 64; j++) {
|
|
291
|
-
let f;
|
|
292
|
-
let g;
|
|
293
|
-
if (j < 16) {
|
|
294
|
-
f = (b & c) | (~b & d);
|
|
295
|
-
g = j;
|
|
296
|
-
}
|
|
297
|
-
else if (j < 32) {
|
|
298
|
-
f = (d & b) | (~d & c);
|
|
299
|
-
g = (5 * j + 1) % 16;
|
|
300
|
-
}
|
|
301
|
-
else if (j < 48) {
|
|
302
|
-
f = b ^ c ^ d;
|
|
303
|
-
g = (3 * j + 5) % 16;
|
|
304
|
-
}
|
|
305
|
-
else {
|
|
306
|
-
f = c ^ (b | ~d);
|
|
307
|
-
g = (7 * j) % 16;
|
|
308
|
-
}
|
|
309
|
-
const temp = d;
|
|
310
|
-
d = c;
|
|
311
|
-
c = b;
|
|
312
|
-
b = b + leftRotate((a + f + K[j] + w[g]), [7, 12, 17, 22][j / 16 | 0]);
|
|
313
|
-
a = temp;
|
|
314
|
-
}
|
|
315
|
-
a0 += a;
|
|
316
|
-
b0 += b;
|
|
317
|
-
c0 += c;
|
|
318
|
-
d0 += d;
|
|
319
|
-
}
|
|
320
|
-
// 将结果转换为十六进制字符串
|
|
321
|
-
const toHex = (n) => {
|
|
322
|
-
return ('00000000' + n.toString(16)).slice(-8);
|
|
323
|
-
};
|
|
324
|
-
return (toHex(a0) +
|
|
325
|
-
toHex(b0) +
|
|
326
|
-
toHex(c0) +
|
|
327
|
-
toHex(d0)).toLowerCase();
|
|
534
|
+
return md5(input);
|
|
328
535
|
}
|
|
329
536
|
getSignHeaderName() {
|
|
330
537
|
return this.config.signHeaderName;
|
|
@@ -670,6 +877,12 @@ class ApiClient {
|
|
|
670
877
|
error instanceof Error && 'response' in error &&
|
|
671
878
|
error.response?.status &&
|
|
672
879
|
this.tokenRefreshManager.isTokenExpired(error.response.status)) {
|
|
880
|
+
// 检查是否是auth相关接口,如果是则跳过token刷新
|
|
881
|
+
const config = error.config;
|
|
882
|
+
const url = config?.url || '';
|
|
883
|
+
if (url.includes('/auth/')) {
|
|
884
|
+
return Promise.reject(errorHandlerManager.handleError(error));
|
|
885
|
+
}
|
|
673
886
|
try {
|
|
674
887
|
const newConfig = await this.tokenRefreshManager.handleTokenExpired(this.axiosInstance, error.config);
|
|
675
888
|
return this.axiosInstance.request(newConfig);
|