@antglobal/rlog-sdk 0.0.1779194445-dev.0 → 0.0.1781493462-dev.2
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/esm/lib/api.d.ts.map +1 -1
- package/dist/esm/lib/api.js +27 -16
- package/dist/esm/lib/config.d.ts +1 -1
- package/dist/esm/lib/config.d.ts.map +1 -1
- package/dist/esm/lib/config.js +2 -2
- package/dist/esm/lib/constants.d.ts +10 -2
- package/dist/esm/lib/constants.d.ts.map +1 -1
- package/dist/esm/lib/constants.js +16 -2
- package/dist/esm/lib/rrweb.d.ts.map +1 -1
- package/dist/esm/lib/rrweb.js +14 -10
- package/dist/esm/lib/sign.d.ts +36 -0
- package/dist/esm/lib/sign.d.ts.map +1 -0
- package/dist/esm/lib/sign.js +393 -0
- package/dist/esm/lib/upload-worker-manager.d.ts.map +1 -1
- package/dist/esm/lib/upload-worker-manager.js +20 -9
- package/dist/esm/lib/utils.d.ts +5 -0
- package/dist/esm/lib/utils.d.ts.map +1 -1
- package/dist/esm/lib/utils.js +10 -2
- package/dist/lib/lib/api.d.ts.map +1 -1
- package/dist/lib/lib/api.js +27 -16
- package/dist/lib/lib/config.d.ts +1 -1
- package/dist/lib/lib/config.d.ts.map +1 -1
- package/dist/lib/lib/config.js +2 -2
- package/dist/lib/lib/constants.d.ts +10 -2
- package/dist/lib/lib/constants.d.ts.map +1 -1
- package/dist/lib/lib/constants.js +17 -3
- package/dist/lib/lib/rrweb.d.ts.map +1 -1
- package/dist/lib/lib/rrweb.js +12 -10
- package/dist/lib/lib/sign.d.ts +36 -0
- package/dist/lib/lib/sign.d.ts.map +1 -0
- package/dist/lib/lib/sign.js +398 -0
- package/dist/lib/lib/upload-worker-manager.d.ts.map +1 -1
- package/dist/lib/lib/upload-worker-manager.js +20 -9
- package/dist/lib/lib/utils.d.ts +5 -0
- package/dist/lib/lib/utils.d.ts.map +1 -1
- package/dist/lib/lib/utils.js +10 -2
- package/dist/rlog-sdk.min.js +1 -1
- package/package.json +3 -3
package/dist/lib/lib/api.js
CHANGED
|
@@ -9,9 +9,15 @@ var _utils = require("./utils");
|
|
|
9
9
|
var _request = require("./request");
|
|
10
10
|
var _config = require("./config");
|
|
11
11
|
var _net = require("./net");
|
|
12
|
+
var _sign = require("./sign");
|
|
12
13
|
var _constants = require("./constants");
|
|
13
14
|
function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, catch: function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
|
|
14
15
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
16
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
17
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
18
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
19
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
20
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
15
21
|
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
16
22
|
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
17
23
|
// 从URL中提取指定参数并存储到sessionStorage中
|
|
@@ -64,7 +70,7 @@ function buildQueryParams(opts) {
|
|
|
64
70
|
}
|
|
65
71
|
var upload = exports.upload = /*#__PURE__*/function () {
|
|
66
72
|
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(opt) {
|
|
67
|
-
var queryParams, queryString, api, formData, customHeaders, response, responseData, error;
|
|
73
|
+
var queryParams, queryString, api, jsonData, signHeaders, formData, customHeaders, response, responseData, error;
|
|
68
74
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
69
75
|
while (1) switch (_context.prev = _context.next) {
|
|
70
76
|
case 0:
|
|
@@ -75,39 +81,44 @@ var upload = exports.upload = /*#__PURE__*/function () {
|
|
|
75
81
|
data: opt.data
|
|
76
82
|
});
|
|
77
83
|
queryString = new URLSearchParams(queryParams);
|
|
78
|
-
api = "".concat(opt.url).concat(queryString ? "?".concat(queryString) : '');
|
|
84
|
+
api = "".concat(opt.url).concat(queryString ? "?".concat(queryString) : ''); // 序列化事件数据并计算签名请求头
|
|
85
|
+
jsonData = JSON.stringify(opt.data);
|
|
86
|
+
_context.next = 6;
|
|
87
|
+
return (0, _sign.computeSignHeaders)(queryParams, jsonData);
|
|
88
|
+
case 6:
|
|
89
|
+
signHeaders = _context.sent;
|
|
79
90
|
formData = new FormData();
|
|
80
|
-
formData.append('file', new Blob([
|
|
91
|
+
formData.append('file', new Blob([jsonData]), (0, _utils.generateUUIDCompat)() + '.json');
|
|
81
92
|
|
|
82
|
-
//
|
|
93
|
+
// 获取自定义请求头并合并签名头
|
|
83
94
|
customHeaders = (0, _net.getCustomHeaders)();
|
|
84
|
-
_context.next =
|
|
95
|
+
_context.next = 12;
|
|
85
96
|
return (0, _request.post)(api, formData, {
|
|
86
|
-
headers: customHeaders
|
|
97
|
+
headers: _objectSpread(_objectSpread({}, customHeaders), signHeaders)
|
|
87
98
|
});
|
|
88
|
-
case
|
|
99
|
+
case 12:
|
|
89
100
|
response = _context.sent;
|
|
90
|
-
_context.prev =
|
|
101
|
+
_context.prev = 13;
|
|
91
102
|
responseData = typeof response.data === 'string' ? JSON.parse(response.data) : response.data;
|
|
92
|
-
_context.next =
|
|
103
|
+
_context.next = 20;
|
|
93
104
|
break;
|
|
94
|
-
case
|
|
95
|
-
_context.prev =
|
|
96
|
-
_context.t0 = _context["catch"](
|
|
105
|
+
case 17:
|
|
106
|
+
_context.prev = 17;
|
|
107
|
+
_context.t0 = _context["catch"](13);
|
|
97
108
|
return _context.abrupt("return");
|
|
98
|
-
case
|
|
109
|
+
case 20:
|
|
99
110
|
if (!(responseData && _typeof(responseData) === 'object' && responseData.success === false)) {
|
|
100
|
-
_context.next =
|
|
111
|
+
_context.next = 24;
|
|
101
112
|
break;
|
|
102
113
|
}
|
|
103
114
|
error = new Error(responseData.errorMessage || 'Upload failed with success=false'); // 将完整的响应数据附加到错误对象上
|
|
104
115
|
error.responseData = responseData;
|
|
105
116
|
throw error;
|
|
106
|
-
case
|
|
117
|
+
case 24:
|
|
107
118
|
case "end":
|
|
108
119
|
return _context.stop();
|
|
109
120
|
}
|
|
110
|
-
}, _callee, null, [[
|
|
121
|
+
}, _callee, null, [[13, 17]]);
|
|
111
122
|
}));
|
|
112
123
|
return function upload(_x) {
|
|
113
124
|
return _ref.apply(this, arguments);
|
package/dist/lib/lib/config.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/lib/config.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,mBAAmB;IAElC,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB,KAAK,CAAC,EAAE,CACJ,QAAQ,GACR,OAAO,GACP,OAAO,GACP,YAAY,GACZ,OAAO,GACP,KAAK,GACL,QAAQ,GACR,OAAO,GACP,OAAO,GACP,gBAAgB,GAChB,UAAU,GACV,MAAM,GACN,KAAK,GACL,OAAO,GACP,MAAM,GACN,SAAS,GACT,SAAS,GACT,OAAO,GACP,MAAM,CACT,EAAE,CAAC;IAEJ,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,gBAAgB,CAAC,EAAE;QAEjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAE3B,cAAc,CAAC,EAAE,MAAM,CAAC;QAExB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;CACH;AAGD,MAAM,WAAW,kBAAkB;IAEjC,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAGD,MAAM,WAAW,SAAS;IAExB,MAAM,EAAE,OAAO,CAAC;IAEhB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,QAAQ,CAAC,EAAE;QAET,MAAM,CAAC,EAAE,MAAM,CAAC;QAEhB,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAE7B,MAAM,CAAC,EAAE,MAAM,CAAC;QAEhB,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;KACxB,CAAC;IAGF,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,cAAc,EAAE,MAAM,CAAC;IAEvB,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAG5B,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAGnC,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAG9B,IAAI,CAAC,EAAE,OAAO,CAAC;IAGf,aAAa,CAAC,EAAE;QACd,MAAM,CAAC,EAAE,OAAO,CAAC;QAEjB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAC7B,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;KACzB,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/lib/config.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,mBAAmB;IAElC,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB,KAAK,CAAC,EAAE,CACJ,QAAQ,GACR,OAAO,GACP,OAAO,GACP,YAAY,GACZ,OAAO,GACP,KAAK,GACL,QAAQ,GACR,OAAO,GACP,OAAO,GACP,gBAAgB,GAChB,UAAU,GACV,MAAM,GACN,KAAK,GACL,OAAO,GACP,MAAM,GACN,SAAS,GACT,SAAS,GACT,OAAO,GACP,MAAM,CACT,EAAE,CAAC;IAEJ,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,gBAAgB,CAAC,EAAE;QAEjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAE3B,cAAc,CAAC,EAAE,MAAM,CAAC;QAExB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;CACH;AAGD,MAAM,WAAW,kBAAkB;IAEjC,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAGD,MAAM,WAAW,SAAS;IAExB,MAAM,EAAE,OAAO,CAAC;IAEhB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,QAAQ,CAAC,EAAE;QAET,MAAM,CAAC,EAAE,MAAM,CAAC;QAEhB,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAE7B,MAAM,CAAC,EAAE,MAAM,CAAC;QAEhB,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;KACxB,CAAC;IAGF,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,cAAc,EAAE,MAAM,CAAC;IAEvB,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAG5B,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAGnC,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAG9B,IAAI,CAAC,EAAE,OAAO,CAAC;IAGf,aAAa,CAAC,EAAE;QACd,MAAM,CAAC,EAAE,OAAO,CAAC;QAEjB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAC7B,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;KACzB,CAAC;IAIF,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAG/B,KAAK,CAAC,EAAE,OAAO,CAAC;IAGhB,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAG/B,YAAY,CAAC,EAAE,kBAAkB,CAAC;CACnC;AAkDD;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAoC3E;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,IAAI,CAEhE;AAED;;;GAGG;AACH,wBAAgB,SAAS,IAAI,SAAS,CAErC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAKvC;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA2BtE"}
|
package/dist/lib/lib/config.js
CHANGED
|
@@ -82,8 +82,16 @@ export declare const IDB_DB_NAME = "LogStorageDB";
|
|
|
82
82
|
export declare const IDB_STORE_NAME = "logs";
|
|
83
83
|
/** IndexedDB 数据库版本号 */
|
|
84
84
|
export declare const IDB_VERSION = 2;
|
|
85
|
-
/**
|
|
86
|
-
export declare const
|
|
85
|
+
/** 签名值请求头 */
|
|
86
|
+
export declare const HEADER_SIGN = "x-bk-sign";
|
|
87
|
+
/** 时间戳请求头 */
|
|
88
|
+
export declare const HEADER_TIMESTAMP = "x-bk-ts";
|
|
89
|
+
/** 文件 MD5 请求头 */
|
|
90
|
+
export declare const HEADER_MD5 = "x-bk-dm";
|
|
91
|
+
/** 图片导出格式(WebP) */
|
|
92
|
+
export declare const CANVAS_EXPORT_TYPE_WEBP = "image/webp";
|
|
93
|
+
/** 图片导出格式(JPEG),iOS Safari 不支持 canvas 导出 webp 时降级使用 */
|
|
94
|
+
export declare const CANVAS_EXPORT_TYPE_JPEG = "image/jpeg";
|
|
87
95
|
/** 图片导出质量 */
|
|
88
96
|
export declare const CANVAS_EXPORT_QUALITY = 0.6;
|
|
89
97
|
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,+BAA+B;AAC/B,eAAO,MAAM,qBAAqB,kBAAkB,CAAC;AAErD,uBAAuB;AACvB,eAAO,MAAM,kBAAkB,WAAW,CAAC;AAE3C,yBAAyB;AACzB,eAAO,MAAM,0BAA0B,sBAAsB,CAAC;AAE9D,mCAAmC;AACnC,eAAO,MAAM,4BAA4B,UAAU,CAAC;AAEpD,oCAAoC;AACpC,eAAO,MAAM,4BAA4B,kBAAkB,CAAC;AAE5D,gBAAgB;AAChB,eAAO,MAAM,uBAAuB,eAAe,CAAC;AAEpD,gBAAgB;AAChB,eAAO,MAAM,uBAAuB,eAAe,CAAC;AAEpD,mCAAmC;AACnC,eAAO,MAAM,wBAAwB,sBAAsB,CAAC;AAE5D,mCAAmC;AACnC,eAAO,MAAM,0BAA0B,QAAQ,CAAC;AAEhD,0CAA0C;AAC1C,eAAO,MAAM,gBAAgB,0BAA0B,CAAC;AAExD,uCAAuC;AACvC,eAAO,MAAM,qBAAqB,+BAA+B,CAAC;AAIlE,0DAA0D;AAC1D,eAAO,MAAM,eAAe,QAAqB,CAAC;AAElD,iEAAiE;AACjE,eAAO,MAAM,oBAAoB,QAAgB,CAAC;AAElD,iEAAiE;AACjE,eAAO,MAAM,sBAAsB,QAAgB,CAAC;AAEpD,mBAAmB;AACnB,eAAO,MAAM,YAAY,OAAO,CAAC;AAEjC,qBAAqB;AACrB,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAEnC,oCAAoC;AACpC,eAAO,MAAM,oBAAoB,OAAO,CAAC;AAEzC,yBAAyB;AACzB,eAAO,MAAM,eAAe,QAAQ,CAAC;AAErC,2BAA2B;AAC3B,eAAO,MAAM,kBAAkB,MAAM,CAAC;AAItC,mBAAmB;AACnB,eAAO,MAAM,kBAAkB,QAAQ,CAAC;AAExC,iBAAiB;AACjB,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAEnC,mBAAmB;AACnB,eAAO,MAAM,eAAe,MAAM,CAAC;AAEnC,wBAAwB;AACxB,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AAEvC,uBAAuB;AACvB,eAAO,MAAM,2BAA2B,UAAa,CAAC;AAItD,mDAAmD;AACnD,eAAO,MAAM,oBAAoB,wBAAwB,CAAC;AAE1D,gBAAgB;AAChB,eAAO,MAAM,kBAAkB,uBAAuB,CAAC;AAEvD,oBAAoB;AACpB,eAAO,MAAM,kBAAkB,iBAAiB,CAAC;AAEjD,oBAAoB;AACpB,eAAO,MAAM,gBAAgB,eAAe,CAAC;AAE7C,iBAAiB;AACjB,eAAO,MAAM,oBAAoB,mBAAmB,CAAC;AAErD,eAAe;AACf,eAAO,MAAM,kBAAkB,iBAAiB,CAAC;AAEjD,iBAAiB;AACjB,eAAO,MAAM,oBAAoB,mBAAmB,CAAC;AAIrD,kBAAkB;AAClB,eAAO,MAAM,eAAe,UAQ3B,CAAC;AAEF,kBAAkB;AAClB,eAAO,MAAM,eAAe,UAgB3B,CAAC;AAEF,yBAAyB;AACzB,eAAO,MAAM,kBAAkB,UAAsC,CAAC;AAEtE,gCAAgC;AAChC,eAAO,MAAM,uBAAuB,UAEnC,CAAC;AAIF,eAAe;AACf,eAAO,MAAM,UAAU,WAAW,CAAC;AAInC,sBAAsB;AACtB,eAAO,MAAM,WAAW,iBAAiB,CAAC;AAE1C,uBAAuB;AACvB,eAAO,MAAM,cAAc,SAAS,CAAC;AAErC,uBAAuB;AACvB,eAAO,MAAM,WAAW,IAAI,CAAC;AAI7B,aAAa;AACb,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.WORKER_READY_TIMEOUT = exports.UPLOAD_RETRY_DELAY = exports.STORAGE_VALUE_CONSUME_ONLY = exports.STORAGE_TEST_KEY = exports.STORAGE_KEY_UTOKEN = exports.STORAGE_KEY_URL_PARAM_PREFIX = exports.STORAGE_KEY_SESSION_REGISTRY = exports.STORAGE_KEY_LOCK_PREFIX = exports.STORAGE_KEY_IWP_DEVICE_TAG = exports.STORAGE_KEY_DEVICE_ID = exports.STORAGE_KEY_DATA_PREFIX = exports.STORAGE_KEY_CONSUME_ONLY = exports.SESSION_MAX_AGE = exports.SAFE_STORAGE_TEST_KEY = exports.REQUEST_TIMEOUT = exports.PULL_BATCH_SIZE = exports.ORPHAN_SESSION_MAX_AGE = exports.ORPHAN_PULL_LIMIT = exports.ORPHAN_DATA_MAX_SPAN = exports.MAX_STORAGE_EVENTS = exports.LOG_PREFIX = exports.LOCK_TIMEOUT = exports.LOCK_RETRY_DELAY = exports.LOCK_MAX_RETRIES = exports.IDB_VERSION = exports.IDB_STORE_NAME = exports.IDB_DB_NAME = exports.HEADERS_TO_EXTRACT = exports.EVENT_UPLOAD_FAILURE = exports.EVENT_ROUTE_CHANGE = exports.EVENT_PAGE_LIFECYCLE = exports.EVENT_NETWORK_STATUS = exports.EVENT_HTTP_SUCCESS = exports.EVENT_HTTP_ERROR = exports.EVENT_CUSTOM_ERROR = exports.DEFAULT_WHITE_LIST_URLS = exports.DEFAULT_URL_PARAMS_TO_CACHE = exports.
|
|
6
|
+
exports.WORKER_READY_TIMEOUT = exports.UPLOAD_RETRY_DELAY = exports.STORAGE_VALUE_CONSUME_ONLY = exports.STORAGE_TEST_KEY = exports.STORAGE_KEY_UTOKEN = exports.STORAGE_KEY_URL_PARAM_PREFIX = exports.STORAGE_KEY_SESSION_REGISTRY = exports.STORAGE_KEY_LOCK_PREFIX = exports.STORAGE_KEY_IWP_DEVICE_TAG = exports.STORAGE_KEY_DEVICE_ID = exports.STORAGE_KEY_DATA_PREFIX = exports.STORAGE_KEY_CONSUME_ONLY = exports.SESSION_MAX_AGE = exports.SAFE_STORAGE_TEST_KEY = exports.REQUEST_TIMEOUT = exports.PULL_BATCH_SIZE = exports.ORPHAN_SESSION_MAX_AGE = exports.ORPHAN_PULL_LIMIT = exports.ORPHAN_DATA_MAX_SPAN = exports.MAX_STORAGE_EVENTS = exports.LOG_PREFIX = exports.LOCK_TIMEOUT = exports.LOCK_RETRY_DELAY = exports.LOCK_MAX_RETRIES = exports.IDB_VERSION = exports.IDB_STORE_NAME = exports.IDB_DB_NAME = exports.HEADER_TIMESTAMP = exports.HEADER_SIGN = exports.HEADER_MD5 = exports.HEADERS_TO_EXTRACT = exports.EVENT_UPLOAD_FAILURE = exports.EVENT_ROUTE_CHANGE = exports.EVENT_PAGE_LIFECYCLE = exports.EVENT_NETWORK_STATUS = exports.EVENT_HTTP_SUCCESS = exports.EVENT_HTTP_ERROR = exports.EVENT_CUSTOM_ERROR = exports.DEFAULT_WHITE_LIST_URLS = exports.DEFAULT_URL_PARAMS_TO_CACHE = exports.CANVAS_EXPORT_TYPE_WEBP = exports.CANVAS_EXPORT_TYPE_JPEG = exports.CANVAS_EXPORT_QUALITY = exports.BLACK_PATH_NAME = exports.BLACK_HOST_NAME = void 0;
|
|
7
7
|
/**
|
|
8
8
|
* Rlog SDK 全局常量定义
|
|
9
9
|
*
|
|
@@ -142,10 +142,24 @@ var IDB_STORE_NAME = exports.IDB_STORE_NAME = 'logs';
|
|
|
142
142
|
/** IndexedDB 数据库版本号 */
|
|
143
143
|
var IDB_VERSION = exports.IDB_VERSION = 2;
|
|
144
144
|
|
|
145
|
+
// ==================== 上报接口加签请求头 ====================
|
|
146
|
+
|
|
147
|
+
/** 签名值请求头 */
|
|
148
|
+
var HEADER_SIGN = exports.HEADER_SIGN = 'x-bk-sign';
|
|
149
|
+
|
|
150
|
+
/** 时间戳请求头 */
|
|
151
|
+
var HEADER_TIMESTAMP = exports.HEADER_TIMESTAMP = 'x-bk-ts';
|
|
152
|
+
|
|
153
|
+
/** 文件 MD5 请求头 */
|
|
154
|
+
var HEADER_MD5 = exports.HEADER_MD5 = 'x-bk-dm';
|
|
155
|
+
|
|
145
156
|
// ==================== rrweb 录制默认配置 ====================
|
|
146
157
|
|
|
147
|
-
/**
|
|
148
|
-
var
|
|
158
|
+
/** 图片导出格式(WebP) */
|
|
159
|
+
var CANVAS_EXPORT_TYPE_WEBP = exports.CANVAS_EXPORT_TYPE_WEBP = 'image/webp';
|
|
160
|
+
|
|
161
|
+
/** 图片导出格式(JPEG),iOS Safari 不支持 canvas 导出 webp 时降级使用 */
|
|
162
|
+
var CANVAS_EXPORT_TYPE_JPEG = exports.CANVAS_EXPORT_TYPE_JPEG = 'image/jpeg';
|
|
149
163
|
|
|
150
164
|
/** 图片导出质量 */
|
|
151
165
|
var CANVAS_EXPORT_QUALITY = exports.CANVAS_EXPORT_QUALITY = 0.6;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rrweb.d.ts","sourceRoot":"","sources":["../../../src/lib/rrweb.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"rrweb.d.ts","sourceRoot":"","sources":["../../../src/lib/rrweb.ts"],"names":[],"mappings":"AAkBA,eAAO,MAAM,UAAU,YAKtB,CAAC;AAEF,eAAO,MAAM,WAAW,YA+FvB,CAAC"}
|
package/dist/lib/lib/rrweb.js
CHANGED
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.stopRecord = exports.startRecord = void 0;
|
|
7
|
-
var
|
|
7
|
+
var _rrweb = require("rrweb");
|
|
8
8
|
var _rrwebPluginConsoleRecord = require("@rrweb/rrweb-plugin-console-record");
|
|
9
9
|
var _utils = require("./utils");
|
|
10
10
|
var _storageManager = require("./storage-manager");
|
|
@@ -13,8 +13,6 @@ var _config = require("./config");
|
|
|
13
13
|
var _logger = _interopRequireDefault(require("./logger"));
|
|
14
14
|
var _constants = require("./constants");
|
|
15
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
16
|
-
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
17
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
18
16
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
19
17
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
20
18
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
@@ -29,6 +27,7 @@ var stopRecord = exports.stopRecord = function stopRecord() {
|
|
|
29
27
|
}
|
|
30
28
|
};
|
|
31
29
|
var startRecord = exports.startRecord = function startRecord() {
|
|
30
|
+
var _config$ignoreCSSAttr;
|
|
32
31
|
// 检查采集总开关
|
|
33
32
|
var config = (0, _config.getConfig)();
|
|
34
33
|
if (!config.enable) {
|
|
@@ -63,7 +62,10 @@ var startRecord = exports.startRecord = function startRecord() {
|
|
|
63
62
|
});
|
|
64
63
|
plugins.push((0, _rrwebPluginConsoleRecord.getRecordConsolePlugin)(consoleConfig));
|
|
65
64
|
}
|
|
66
|
-
|
|
65
|
+
|
|
66
|
+
// 构建 ignoreCSSAttributes 集合
|
|
67
|
+
var ignoreCSSAttributes = (_config$ignoreCSSAttr = config.ignoreCSSAttributes) !== null && _config$ignoreCSSAttr !== void 0 && _config$ignoreCSSAttr.length ? new Set(config.ignoreCSSAttributes) : new Set();
|
|
68
|
+
stopRecordFn = (0, _rrweb.record)({
|
|
67
69
|
emit: function emit(event) {
|
|
68
70
|
// you should use console.log in this way to avoid errors.
|
|
69
71
|
// const defaultLog = (console.log as any)['__rrweb_original__']
|
|
@@ -88,16 +90,16 @@ var startRecord = exports.startRecord = function startRecord() {
|
|
|
88
90
|
ignoreClass: config.ignoreClass,
|
|
89
91
|
blockClass: config.blockClass,
|
|
90
92
|
maskTextClass: config.maskTextClass,
|
|
91
|
-
//
|
|
93
|
+
// 忽略高频 CSS 属性变更,避免动画 CSS 变量产生冗余增量快照
|
|
94
|
+
ignoreCSSAttributes: ignoreCSSAttributes,
|
|
95
|
+
// 图像的格式:iOS Safari 不支持 canvas 导出 webp(会静默回退为 png 无损,体积大),降级为 jpeg
|
|
92
96
|
dataURLOptions: {
|
|
93
|
-
type: _constants.
|
|
97
|
+
type: (0, _utils.isIOS)() ? _constants.CANVAS_EXPORT_TYPE_JPEG : _constants.CANVAS_EXPORT_TYPE_WEBP,
|
|
94
98
|
quality: _constants.CANVAS_EXPORT_QUALITY
|
|
95
99
|
},
|
|
96
100
|
collectFonts: true,
|
|
97
101
|
recordCrossOriginIframes: true,
|
|
98
|
-
plugins: [].concat(plugins)
|
|
99
|
-
// 是否使用rrweb的packFn压缩事件数据,默认false
|
|
100
|
-
packFn: config.packEvents ? rrweb.pack : undefined
|
|
102
|
+
plugins: [].concat(plugins)
|
|
101
103
|
});
|
|
102
104
|
|
|
103
105
|
// 设置网络监控
|
|
@@ -107,7 +109,7 @@ var startRecord = exports.startRecord = function startRecord() {
|
|
|
107
109
|
// 根据配置决定是否开启接口请求抓取
|
|
108
110
|
if (config.http) {
|
|
109
111
|
try {
|
|
110
|
-
(0, _net.watchXhr)(
|
|
112
|
+
(0, _net.watchXhr)(_rrweb.record);
|
|
111
113
|
} catch (error) {
|
|
112
114
|
_logger.default.warn('Failed to initialize HTTP monitoring:', error);
|
|
113
115
|
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 上报接口加签模块
|
|
3
|
+
*
|
|
4
|
+
* 签名算法:
|
|
5
|
+
* 1. md5 = MD5(rrweb 录制的 JSON 数据)
|
|
6
|
+
* 2. ts = Date.now()
|
|
7
|
+
* 3. secret = MD5(md5 + ts) — 一次性签名密钥
|
|
8
|
+
* 4. sign = HMAC-SHA256(encodeURIComponent(sortedParams) + md5 + ts, secret)
|
|
9
|
+
*
|
|
10
|
+
* 请求头:
|
|
11
|
+
* x-bk-sign = sign
|
|
12
|
+
* x-bk-ts = ts
|
|
13
|
+
* x-bk-dm = md5
|
|
14
|
+
*/
|
|
15
|
+
export declare function md5(str: string): string;
|
|
16
|
+
/**
|
|
17
|
+
* 将查询参数按 key 字母序排列并拼接为字符串,过滤空值
|
|
18
|
+
* @param params 查询参数键值对
|
|
19
|
+
* @returns 排序后的参数字符串,如 "appId=xxx&deviceId=yyy&startTime=zzz"
|
|
20
|
+
*/
|
|
21
|
+
export declare function sortAndConcatParams(params: Record<string, string>): string;
|
|
22
|
+
/**
|
|
23
|
+
* 计算上报接口的签名请求头
|
|
24
|
+
*
|
|
25
|
+
* 签名流程:
|
|
26
|
+
* 1. md5 = MD5(上报数据的 JSON 字符串)
|
|
27
|
+
* 2. ts = 当前时间戳(毫秒)
|
|
28
|
+
* 3. secret = MD5(md5 + ts) — 一次性签名密钥
|
|
29
|
+
* 4. sign = HMAC-SHA256(encodeURIComponent(sortedParams) + md5 + ts, secret)
|
|
30
|
+
*
|
|
31
|
+
* @param queryParams 查询参数键值对
|
|
32
|
+
* @param jsonData 上报数据的 JSON 字符串
|
|
33
|
+
* @returns 签名请求头 { x-bk-sign, x-bk-ts, x-bk-dm }
|
|
34
|
+
*/
|
|
35
|
+
export declare function computeSignHeaders(queryParams: Record<string, string>, jsonData: string): Promise<Record<string, string>>;
|
|
36
|
+
//# sourceMappingURL=sign.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sign.d.ts","sourceRoot":"","sources":["../../../src/lib/sign.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAqKH,wBAAgB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEvC;AAoMD;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAW1E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACnC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAajC"}
|