mirror of
https://github.com/Azgaar/Fantasy-Map-Generator.git
synced 2026-04-04 22:47:23 +02:00
refactor: update Dropbox authentication handling with BroadcastChannel for improved token management
This commit is contained in:
parent
b6fbc66ec3
commit
f3fe260c5b
3 changed files with 30 additions and 10 deletions
|
|
@ -1,4 +1,4 @@
|
|||
<!DOCTYPE html>
|
||||
<!doctype html>
|
||||
<html lang="en" dir="ltr">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
|
|
@ -17,7 +17,7 @@
|
|||
const error = params.get("error");
|
||||
|
||||
if (code) getToken();
|
||||
else if (error) window.opener.Cloud.providers.dropbox.returnError(params.get("error_description"));
|
||||
else if (error) returnError(params.get("error_description"));
|
||||
else startAuth();
|
||||
|
||||
function startAuth() {
|
||||
|
|
@ -31,13 +31,23 @@
|
|||
.catch(error => console.error(error));
|
||||
}
|
||||
|
||||
function returnError(description) {
|
||||
const channel = new BroadcastChannel("dropbox-auth");
|
||||
channel.postMessage({type: "error", description});
|
||||
channel.close();
|
||||
window.close();
|
||||
}
|
||||
|
||||
function getToken() {
|
||||
auth.setCodeVerifier(window.sessionStorage.getItem("codeVerifier"));
|
||||
auth
|
||||
.getAccessTokenFromCode(REDIRECT_URI, code)
|
||||
.then(resp => {
|
||||
const token = resp.result.access_token;
|
||||
window.opener.Cloud.providers.dropbox.setDropBoxToken(token);
|
||||
const channel = new BroadcastChannel("dropbox-auth");
|
||||
channel.postMessage({type: "token", token});
|
||||
channel.close();
|
||||
window.close();
|
||||
})
|
||||
.catch(error => {
|
||||
console.error(error);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue