badmfck-api-server 4.0.87 → 4.0.89
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.
|
@@ -127,7 +127,7 @@ export declare class DBService extends BaseService {
|
|
|
127
127
|
adapter: IDBAdapter | null;
|
|
128
128
|
constructor(options: IDBSericeOptions);
|
|
129
129
|
init(): Promise<void>;
|
|
130
|
-
escape(id: string, value:
|
|
130
|
+
static escape(id: string, value: any): string;
|
|
131
131
|
getAdapter(dbid?: string | null): IDBAdapter | IDBError;
|
|
132
132
|
reportQuery(result: IDBResult, req: IDBQuery): Promise<void>;
|
|
133
133
|
finishService(): Promise<void>;
|
|
@@ -240,10 +240,29 @@ class DBService extends BaseService_1.BaseService {
|
|
|
240
240
|
return errorResult;
|
|
241
241
|
};
|
|
242
242
|
}
|
|
243
|
-
escape(id, value) {
|
|
244
|
-
const adapter =
|
|
245
|
-
if (!adapter || "errno" in adapter)
|
|
246
|
-
|
|
243
|
+
static escape(id, value) {
|
|
244
|
+
const adapter = DBService.allInstances.find(i => i.options.id === id)?.adapter;
|
|
245
|
+
if (!adapter || "errno" in adapter) {
|
|
246
|
+
if (value === null || value === undefined)
|
|
247
|
+
return 'NULL';
|
|
248
|
+
const stringValue = typeof value === 'object' ? JSON.stringify(value) : String(value);
|
|
249
|
+
return stringValue.replace(/[\0\x08\x09\x1a\n\r"'\\\%]/g, (char) => {
|
|
250
|
+
switch (char) {
|
|
251
|
+
case "\0": return "\\0";
|
|
252
|
+
case "\x08": return "\\b";
|
|
253
|
+
case "\x09": return "\\t";
|
|
254
|
+
case "\x1a": return "\\z";
|
|
255
|
+
case "\n": return "\\n";
|
|
256
|
+
case "\r": return "\\r";
|
|
257
|
+
case "\"":
|
|
258
|
+
case "'":
|
|
259
|
+
case "\\":
|
|
260
|
+
case "%":
|
|
261
|
+
return "\\" + char;
|
|
262
|
+
default: return char;
|
|
263
|
+
}
|
|
264
|
+
});
|
|
265
|
+
}
|
|
247
266
|
return adapter.escape(value);
|
|
248
267
|
}
|
|
249
268
|
getAdapter(dbid) {
|