summaryrefslogtreecommitdiff
path: root/src/api
diff options
context:
space:
mode:
authorHaishan <[email protected]>2018-10-21 01:13:53 +0800
committerHaishan <[email protected]>2018-10-21 01:13:53 +0800
commit9d81f9c04540d92f1a2a075b932461432ef3ce66 (patch)
tree607a944fa273b2ea31693037c733092d823289be /src/api
parent4646c216a9e5cdc1ec65de872279469988df3ad1 (diff)
fix: reset traffic fetched status on connection failure/shutdown
Diffstat (limited to 'src/api')
-rw-r--r--src/api/traffic.js12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/api/traffic.js b/src/api/traffic.js
index 434384a..2eca663 100644
--- a/src/api/traffic.js
+++ b/src/api/traffic.js
@@ -51,10 +51,13 @@ const traffic = {
}
};
+let fetched = false;
+
function pump(reader) {
return reader.read().then(({ done, value }) => {
if (done) {
console.log('done');
+ fetched = false;
return;
}
const t = textDecoder.decode(value);
@@ -67,14 +70,15 @@ function pump(reader) {
});
}
-let fetched = false;
function fetchData() {
if (fetched) return traffic;
const { url, init } = getURLAndInit();
fetch(url, init).then(response => {
- fetched = true;
- const reader = response.body.getReader();
- pump(reader);
+ if (response.ok) {
+ fetched = true;
+ const reader = response.body.getReader();
+ pump(reader);
+ }
});
return traffic;
}