This page was saved using WebZIP 7.0.3.1030 offline browser on 12/24/13 11:31:37.
Address: https://crxdoc-zh.appspot.com/apps/identity.html
Title: chrome.identity - Google Chrome 应用开发文档(非官方中文版)  •  Size: 39911

chrome.identity

描述 使用 chrome.identity API 获取 OAuth2 访问令牌。
可用版本 从 Chrome 29 开始稳定支持。
权限 "identity"
了解更多 认证用户

chrome.identity 参考

方法

getAuthToken

chrome.identity.getAuthToken(object details, function callback)

获取 manifest.json 中 oauth2 部分指定的 OAuth2 访问令牌。

认证 API 会在内存中缓存访问令牌,所以可以在需要令牌的任何时候调用 getAuthToken。令牌缓存的过期问题会自动处理。

参数

details ( optional object )

令牌选项。

属性

interactive ( optional boolean )

获取令牌可能需要用户登录到 Chrome 浏览器,或同意应用程序请求的范围。如果交互式标志为 truegetAuthToken 会在必要时提示用户。当该标志为 false 或省略时,需要提示时 getAuthToken 会返回失败。

callback ( function )

调用时传递清单文件中指定的 OAuth2 访问令牌,如果发生错误则为 undefined。

callback 参数应该指定一个如下形式的函数:

function(string token) {...};

token ( optional string )

removeCachedAuthToken

chrome.identity.removeCachedAuthToken(object details, function callback)

从认证 API 的令牌缓存中移除 OAuth2 访问令牌。

如果发现某个访问令牌无效,应该将它传递给 removeCachedAuthToken 将它从缓存中移除,接着应用可以使用 getAuthToken 获取新的令牌。

参数

details ( object )

Token information.

属性

token ( string )

应该从缓存中移除的某个令牌。

callback ( function )

Called when the token has been removed from the cache.

callback 参数应该指定一个如下形式的函数:

function() {...};

launchWebAuthFlow

chrome.identity.launchWebAuthFlow(object details, function callback)

在指定 URL 开始认证流程。

该方法通过打开一个网页视图并导航至提供商认证流程的第一个 URL,可以与非 Google 认证提供商进行认证流程。当提供商重定向至某个匹配 https://<app-id>.chromiumapp.org/* 的 URL 时,窗口会关闭,最终的重定向 URL 会传递给 callback 函数。

参数

details ( object )

WebAuth 流程选项。

属性

url ( string )

开始认证流程的 URL。

interactive ( optional boolean )

是否要以交互模式执行认证流程。

由于某些认证流程可能会立刻重定向至结果 URL,launchWebAuthFlow 会隐藏该网页视图,直到第一次导航重定向至最终的 URL,或者要显示的网页加载完成。

如果交互式标识为 true,网页加载完成后会显示窗口。如果该标识为 false 或省略,launchWebAuthFlow 在第一次导航没有完成认证流程的情况下会返回错误。

callback ( function )

调用时传递重定向回您的应用程序的 URL。

callback 参数应该指定一个如下形式的函数:

function(string responseUrl) {...};

responseUrl ( optional string )

getRedirectURL

string chrome.identity.getRedirectURL(string path)

生成重定向 URL,以便在 launchWebAuthFlow 中使用。

生成的 URL 匹配如下表达式 https://<app-id>.chromiumapp.org/*

参数

path ( optional string )

附加到生成的 URL 末尾的路径。

事件

onSignInChanged

当用户配置文件中某个账户的登录状态更改时产生。

addListener

chrome.identity.onSignInChanged.addListener(function callback)

参数

callback ( function )

callback 参数应该指定一个如下形式的函数:

function(object account, boolean signedIn) {...};

account ( object )

属性

id ( string )

账户的唯一标识符,在账户的生命周期内不会更改。

signedIn ( boolean )