我已经遵循了tutorial in the documentation的谷歌身份验证用户从我的Chrome扩展写在React。
由于教程不是针对React的,所以我不得不调整调用chrome.identity.getAuthToken
的方式。我把对chrome.identity.getAuthToken
的调用放到了App
组件中的useEffect
中:
function App() {
useEffect(
() => {
console.log('chrome', chrome)
console.log('chrome.identity', chrome.identity)
console.log('chrome.identity.getAuthToken', chrome.identity.getAuthToken)
// eslint-disable-next-line no-undef
chrome.identity.getAuthToken({interactive: true}, function(token) {
console.log('Token:', token);
});
},
[]
)
return (
... // Stuff unrelated to authentication, renders without a problem
);
}
字符串
控制台中的输出为:
的数据
因此,函数chrome.identity.getAuthToken
被定义,但 * 不支持 *。“不支持”是什么意思?我能错过什么呢?
1条答案
按热度按时间drkbr07n1#
根据@wOxxOm的评论,问题是Opera不支持
chrome.identity.getAuthToken
。Opera的解决方法是使用
chrome.identity.launchWebAuthFlow
。The linked post提供了一个用法示例。请务必仔细阅读该示例中的注解。