我正在开发一些客户端网络应用,例如需要访问Outlook邮件和日历的Chrome扩展程序。我按照https://dev.outlook.com/RestGettingStarted上的说明操作,成功访问并刷新令牌以检索数据。
但是,我找不到任何实施" logout"的方法。基本的想法是让用户注销并使用不同的Outlook帐户登录。为了做到这一点,我删除了缓存的令牌,请求以交互模式访问令牌。登录窗口确实弹出,但它占用了任何有效的电子邮件地址,没有让我输入密码,最后返回以前帐户的令牌。因此,在旧令牌过期之前,我无法真正使用其他帐户。
有人可以告诉我是否可以发送撤销令牌的请求,以便人们可以使用其他帐户?谢谢!
=============================================== ========== 更新: 实际上这是chrome.identity api的错。我使用chrome.identity.LaunchWebAuthFlow来初始化auth流程。它缓存用户的身份但无法删除它。所以我们不能真的"退出"如果使用这个api。
答案 0 :(得分:0)
我通过launchWebAuthFlow使用了两次注销 - 首先我调用了我的应用程序的注销链接,然后我调用了注销链接到谷歌。
var options = {
'interactive': false,
'url': 'https://localhost:44344/Account/Logout'
}
chrome.identity.launchWebAuthFlow(options, function(redirectUri) {});
options = {
'interactive': false,
'url': 'https://accounts.google.com/logout'
}
chrome.identity.launchWebAuthFlow(options, function(redirectUri) {});