Switch to async/await and submit last error info

This commit is contained in:
shinigami-eyes 2019-05-12 17:13:18 +02:00
parent b2e1adf67f
commit 1372be9649
1 changed files with 20 additions and 14 deletions

View File

@ -230,6 +230,7 @@ var badIdentifiersArray = [
var badIdentifiers = {}; var badIdentifiers = {};
badIdentifiersArray.forEach(x => badIdentifiers[x] = true); badIdentifiersArray.forEach(x => badIdentifiers[x] = true);
var lastSubmissionError = null;
var needsInfiniteResubmissionWorkaround = [ var needsInfiniteResubmissionWorkaround = [
'046775268347','094745034139','059025030493','016970595453','016488055088','028573603939', '046775268347','094745034139','059025030493','016970595453','016488055088','028573603939',
@ -364,27 +365,32 @@ createContextMenu('Help', 'help');
var uncommittedResponse = null; var uncommittedResponse = null;
function submitPendingRatings() { async function submitPendingRatings() {
var submitted = overrides[PENDING_SUBMISSIONS].map(x => x); var submitted = overrides[PENDING_SUBMISSIONS].map(x => x);
var requestBody = { var requestBody = {
installationId: installationId, installationId: installationId,
lastError: lastSubmissionError,
entries: submitted entries: submitted
} }
lastSubmissionError = null;
console.log('Sending request'); console.log('Sending request');
fetch('https://k5kk18774h.execute-api.us-east-1.amazonaws.com/default/shinigamiEyesSubmission', { try {
body: JSON.stringify(requestBody), var response = await fetch('https://k5kk18774h.execute-api.us-east-1.amazonaws.com/default/shinigamiEyesSubmission', {
method: 'POST', body: JSON.stringify(requestBody),
credentials: 'omit', method: 'POST',
}).then(response => { credentials: 'omit',
response.text().then(result => { });
console.log('Response: ' + result); if (response.status != 200) throw ('HTTP status: ' + response.status)
if (result == 'SUCCESS') { var result = await response.text();
overrides[PENDING_SUBMISSIONS] = overrides[PENDING_SUBMISSIONS].filter(x => submitted.indexOf(x) == -1);
browser.storage.local.set({ overrides: overrides }); if (result != 'SUCCESS') throw 'Bad response: ' + ('' + result).substring(0, 20);
}
}) overrides[PENDING_SUBMISSIONS] = overrides[PENDING_SUBMISSIONS].filter(x => submitted.indexOf(x) == -1);
browser.storage.local.set({ overrides: overrides });
} catch(e) {
lastSubmissionError = '' + e
}
});
} }