chromiumapp.org扩展程序如何重定向适用于Google Chrome?

时间:2016-03-03 11:26:09

标签: google-chrome google-chrome-extension oauth-2.0 google-oauth

当您创建Chrome扩展程序并希望使用OAuth 2.0时,您可以使用https://<app-id>.chromiumapp.org/*网址,因此可以让远程服务器直接点击您的浏览器实例(之前已回答 - 例如https://stackoverflow.com/a/30613603/61239 )。有谁知道,或者能够理解它是如何工作的?您是否能够在浏览器中定位任何请求,或者这仅适用于OAuth 2.0?

1 个答案:

答案 0 :(得分:3)

这由WebAuthFlow class处理,其目的如下:

  

给定提供程序URL,加载URL并执行常规Web导航,直到导致重定向到有效的扩展重定向URL。   在重定向到适当的URL之前,提供者可以根据需要向用户显示任何UI。

当服务器指示浏览器重定向到有效的扩展名重定向URL时,该URL会传递给提供给chrome.identity.launchWebAuthFlow的回调函数。

适当的&#39;网址在web_auth_flow.cc中是硬编码的:

static const char kChromeExtensionSchemeUrlPattern[] =
    "chrome-extension://%s/";
static const char kChromiumDomainRedirectUrlPattern[] =
    "https://%s.chromiumapp.org/";

因此特殊网址https://<app-id>.chromiumapp.org/*仅适用于chrome.identity API的WebAuthFlow上下文。请注意,该机制完全在Chrome内部。永远不会请求URL。