mirror of
https://github.com/MrUnknownDE/VRCX.git
synced 2026-05-06 22:46:06 +02:00
VPN warning, don't retry 403'd GETs
This commit is contained in:
+14
-7
@@ -380,13 +380,13 @@ speechSynthesis.getVoices();
|
|||||||
};
|
};
|
||||||
var {params} = init;
|
var {params} = init;
|
||||||
if (init.method === 'GET') {
|
if (init.method === 'GET') {
|
||||||
// don't retry recent 404
|
// don't retry recent 404/403
|
||||||
if (this.failedGetRequests.has(endpoint)) {
|
if (this.failedGetRequests.has(endpoint)) {
|
||||||
var lastRun = this.failedGetRequests.get(endpoint);
|
var lastRun = this.failedGetRequests.get(endpoint);
|
||||||
if (lastRun >= Date.now() - 900000) {
|
if (lastRun >= Date.now() - 900000) {
|
||||||
// 15mins
|
// 15mins
|
||||||
throw new Error(
|
throw new Error(
|
||||||
`Bailing request due to past 404, ${endpoint}`
|
`Bailing request due to recent 404/403, ${endpoint}`
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
this.failedGetRequests.delete(endpoint);
|
this.failedGetRequests.delete(endpoint);
|
||||||
@@ -457,6 +457,14 @@ speechSynthesis.getVoices();
|
|||||||
}
|
}
|
||||||
throw new Error('401: Missing Credentials');
|
throw new Error('401: Missing Credentials');
|
||||||
}
|
}
|
||||||
|
if (status === 403 && endpoint.substring(0, 6) === 'config') {
|
||||||
|
$app.$alert(
|
||||||
|
'VRChat currently blocks most VPNs. Please disable any connected VPNs and try again.',
|
||||||
|
'Login Error 403'
|
||||||
|
);
|
||||||
|
this.logout();
|
||||||
|
throw new Error(`403: ${endpoint}`);
|
||||||
|
}
|
||||||
if (status === 404 && endpoint.substring(0, 8) === 'avatars/') {
|
if (status === 404 && endpoint.substring(0, 8) === 'avatars/') {
|
||||||
$app.$message({
|
$app.$message({
|
||||||
message: 'Avatar private or deleted',
|
message: 'Avatar private or deleted',
|
||||||
@@ -465,7 +473,10 @@ speechSynthesis.getVoices();
|
|||||||
$app.avatarDialog.visible = false;
|
$app.avatarDialog.visible = false;
|
||||||
throw new Error(`404: Can't find avatarǃ ${endpoint}`);
|
throw new Error(`404: Can't find avatarǃ ${endpoint}`);
|
||||||
}
|
}
|
||||||
if (init.method === 'GET' && status === 404) {
|
if (
|
||||||
|
init.method === 'GET' &&
|
||||||
|
(status === 404 || status === 403)
|
||||||
|
) {
|
||||||
this.failedGetRequests.set(endpoint, Date.now());
|
this.failedGetRequests.set(endpoint, Date.now());
|
||||||
}
|
}
|
||||||
if (status === 404 && endpoint.substring(0, 6) === 'users/') {
|
if (status === 404 && endpoint.substring(0, 6) === 'users/') {
|
||||||
@@ -14568,10 +14579,6 @@ speechSynthesis.getVoices();
|
|||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
D.loading = false;
|
D.loading = false;
|
||||||
D.visible = false;
|
D.visible = false;
|
||||||
this.$message({
|
|
||||||
message: 'Failed to load avatar',
|
|
||||||
type: 'error'
|
|
||||||
});
|
|
||||||
throw err;
|
throw err;
|
||||||
})
|
})
|
||||||
.finally(() => {
|
.finally(() => {
|
||||||
|
|||||||
Reference in New Issue
Block a user