我正在开发一个使用chrome.identity
API的Chrome插件。有两个不同的流,一个用于经过身份验证的用户,另一个用于未经过身份验证的用户。在测试期间,我面临的问题是,如果我对呼叫getAuthToken()
的用户进行身份验证,然后断开连接的应用与Google帐户的连接,则该插件仍会采用经过身份验证的流程,因为我相信chrome.identity
framework缓存身份验证令牌。我需要等待一段时间getAuthToken()
来实现"身份验证已被撤销,然后弹出身份验证对话框。有没有办法强制清除chrome.identity
缓存?
答案 0 :(得分:1)
您可以使用import { Observable } from 'rxjs';
let temp123: Observable<String> = null;
let xyz = temp123.first();
。根据{{3}}:
从Identity API的令牌缓存中删除OAuth2访问令牌。
您必须在第一个参数中传递要删除的标记,因此如果您获得了一个标记:
chrome.identity.removeCachedAuthToken
然后使用:
var myToken;
chrome.identity.getAuthToken({interactive:true}, function(token){
if (token) myToken = token;
});