小编MA *_*Hye的帖子

使用 Google Chrome 扩展存储 OAuth 2.0 访问/刷新令牌的最佳实践?

我正在创建一个 Google Chrome 扩展程序,它将上传按钮添加到 Instagram 个人资料页面上的图像。扩展程序将上传到的服务是 Imgur。

由于我最终希望用户能够上传到其帐户上的特定 Imgur 相册,因此我需要从 Imgur API 获取 OAuth 访问令牌。

为此,我做了以下工作。单击浏览器中的扩展图标时,它会打开一个新选项卡(而不是弹出窗口)。此选项卡将打开index.html。单击该页面上的登录按钮将调用授权 URL。

但是,一旦收到访问/刷新令牌,我应该在哪里安全地存储它们呢?我不认为我可以将它们放在localStorage中,因为据我所知,每个origin都有自己的localStorage。

对于像我这样的 Chrome 扩展,存储 OAuth 2.0 访问令牌和刷新令牌的最佳实践是什么?

// oauth.js
let loginStatus = false;

if (!loginStatus) {
    createElement("p", "You are not logged in to Imgur.", "login-status");
    createElement("button", "Login to Imgur", "login-status", loginToImgur);
} else {
    createElement("p", "You are successfully logged in to Imgur.", "login-status");
    createElement("button", "Signout of Imgur", "login-status", function() {
        alert("this is a placeholder");
    });
}

function createElement(type, text, parentId, onclick) { …
Run Code Online (Sandbox Code Playgroud)

local-storage google-chrome-extension access-token oauth-2.0 refresh-token

5
推荐指数
0
解决办法
1249
查看次数