Skip to content

Commit aa2e3f9

Browse files
committed
Network resources cleanup.
1 parent 0235997 commit aa2e3f9

File tree

2 files changed

+39
-39
lines changed

2 files changed

+39
-39
lines changed

src/GleapConfigManager.js

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,8 @@ export default class GleapConfigManager {
113113
GleapNetworkIntercepter.getInstance().start();
114114
}
115115

116+
GleapNetworkIntercepter.getInstance().setLoadAllResources(flowConfig.sendNetworkResources ? true : false);
117+
116118
if (flowConfig.networkLogPropsToIgnore) {
117119
GleapNetworkIntercepter.getInstance().setFilters(flowConfig.networkLogPropsToIgnore);
118120
}
@@ -121,11 +123,8 @@ export default class GleapConfigManager {
121123
GleapTranslationManager.getInstance().setCustomTranslation(flowConfig.customTranslations);
122124
}
123125

124-
125126
Gleap.enableShortcuts(flowConfig.enableShortcuts ? true : false);
126-
127-
128-
} catch (e) {}
127+
} catch (e) { }
129128
}
130129

131130
getFeedbackOptions(feedbackFlow) {

src/GleapNetworkIntercepter.js

Lines changed: 36 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
import Gleap from "./Gleap";
2-
31
class GleapNetworkIntercepter {
42
startTimestamp = Date.now();
53
requestId = 0;
@@ -9,6 +7,7 @@ class GleapNetworkIntercepter {
97
filters = [];
108
initialized = false;
119
stopped = false;
10+
loadAllResources = false;
1211

1312
// GleapNetworkIntercepter singleton
1413
static instance;
@@ -19,6 +18,10 @@ class GleapNetworkIntercepter {
1918
return this.instance;
2019
}
2120

21+
setLoadAllResources(loadAllResources) {
22+
this.loadAllResources = loadAllResources;
23+
}
24+
2225
isContentTypeSupported(contentType) {
2326
if (typeof contentType !== "string") {
2427
return false;
@@ -45,45 +48,43 @@ class GleapNetworkIntercepter {
4548
Object.values(this.requests)
4649
);
4750

48-
if (!this.filters || this.filters.length === 0) {
49-
return requests;
50-
}
51-
52-
// Perform network log filtering.
53-
for (var i = 0; i < requests.length; i++) {
54-
var request = requests[i];
51+
if (this.filters && this.filters.length > 0) {
52+
// Perform network log filtering.
53+
for (var i = 0; i < requests.length; i++) {
54+
var request = requests[i];
5555

56-
// Headers
57-
if (request && request.request && request.request.headers) {
58-
for (var j = 0; j < this.filters.length; j++) {
59-
delete request.request.headers[this.filters[j]];
56+
// Headers
57+
if (request && request.request && request.request.headers) {
58+
for (var j = 0; j < this.filters.length; j++) {
59+
delete request.request.headers[this.filters[j]];
60+
}
6061
}
61-
}
6262

63-
// Payload
64-
if (request && request.request && request.request.payload) {
65-
var payloadObj = request.request.payload;
66-
try {
67-
payloadObj = JSON.parse(request.request.payload);
68-
} catch (e) { }
63+
// Payload
64+
if (request && request.request && request.request.payload) {
65+
var payloadObj = request.request.payload;
66+
try {
67+
payloadObj = JSON.parse(request.request.payload);
68+
} catch (e) { }
6969

70-
if (payloadObj) {
71-
for (var j = 0; j < this.filters.length; j++) {
72-
delete payloadObj[this.filters[j]];
70+
if (payloadObj) {
71+
for (var j = 0; j < this.filters.length; j++) {
72+
delete payloadObj[this.filters[j]];
73+
}
74+
request.request.payload = JSON.stringify(payloadObj);
7375
}
74-
request.request.payload = JSON.stringify(payloadObj);
7576
}
76-
}
7777

78-
// Response
79-
if (request && request.response && request.response.responseText) {
80-
try {
81-
var data = JSON.parse(request.response.responseText);
82-
for (var j = 0; j < this.filters.length; j++) {
83-
delete data[this.filters[j]];
84-
}
85-
request.response.responseText = JSON.stringify(data);
86-
} catch (e) { }
78+
// Response
79+
if (request && request.response && request.response.responseText) {
80+
try {
81+
var data = JSON.parse(request.response.responseText);
82+
for (var j = 0; j < this.filters.length; j++) {
83+
delete data[this.filters[j]];
84+
}
85+
request.response.responseText = JSON.stringify(data);
86+
} catch (e) { }
87+
}
8788
}
8889
}
8990

@@ -94,7 +95,7 @@ class GleapNetworkIntercepter {
9495
for (var i = 0; i < resources.length; i++) {
9596
var resource = resources[i];
9697
if (resource && resource.name) {
97-
if (!requests.find(request => request.url === resource.name)) {
98+
if ((this.loadAllResources || ["xmlhttprequest", "fetch"].indexOf(resource.initiatorType) > -1) && !requests.find(request => request.url === resource.name)) {
9899
requests.push({
99100
type: "RESOURCE",
100101
date: new Date(this.startTimestamp + resource.startTime),

0 commit comments

Comments
 (0)