handle error based on HTTP status
This commit is contained in:
parent
024a26325b
commit
64b569fd4d
@ -156,23 +156,26 @@ $(document).on("selectedServerChange", function() {
|
||||
async function loadServers() {
|
||||
|
||||
$(".server-loading-item").show();
|
||||
try {
|
||||
let response = await generateServers();
|
||||
$(".server-loading-item").hide();
|
||||
|
||||
if (response.hasOwnProperty("retry_after")) {
|
||||
$(".server-rate-limit").show();
|
||||
return;
|
||||
}
|
||||
|
||||
response.forEach(server => {
|
||||
addToLoadedServers(server, false);
|
||||
generateServers()
|
||||
.then(servers => {
|
||||
servers.forEach(server => addToLoadedServers(server, false));
|
||||
})
|
||||
.catch(error => {
|
||||
switch (error.status) {
|
||||
case 401:
|
||||
window.location.href = "/login"; // discord token has expired
|
||||
break;
|
||||
case 429:
|
||||
$(".server-rate-limit").show();
|
||||
break;
|
||||
default:
|
||||
logError(error);
|
||||
break;
|
||||
}
|
||||
})
|
||||
.finally(() => {
|
||||
$(".server-loading-item").hide();
|
||||
});
|
||||
|
||||
}
|
||||
catch (error) {
|
||||
logError(error);
|
||||
}
|
||||
}
|
||||
|
||||
// #endregion
|
||||
|
@ -35,10 +35,11 @@ class GuildsView(View):
|
||||
url=f"{settings.DISCORD_API_URL}/users/@me/guilds",
|
||||
headers={"Authorization": f"Bearer {access_token}"}
|
||||
)
|
||||
status = response.status_code
|
||||
guild_data = response.json()
|
||||
|
||||
if "retry_after" in guild_data:
|
||||
return JsonResponse(guild_data, safe=False)
|
||||
if status != 200:
|
||||
return JsonResponse(guild_data, status=status, safe=False)
|
||||
|
||||
# guilds where the user either administrates or owns
|
||||
cleaned_guild_data = []
|
||||
|
Loading…
x
Reference in New Issue
Block a user