我正在使用code samples中的代码在应用程序启动时对用户进行身份验证。
UserCredential credential;
using (var stream = new FileStream("client_secrets.json", FileMode.Open, FileAccess.Read))
{
credential = await GoogleWebAuthorizationBroker.AuthorizeAsync(
GoogleClientSecrets.Load(stream).Secrets,
new[] { YouTubeService.Scope.Youtube },
"user",
CancellationToken.None,
new FileDataStore(this.GetType().ToString())
);
}
var youtubeService = new YouTubeService(new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
ApplicationName = this.GetType().ToString()
});
一切正常,除了我想强制每次都显示“选择帐户”屏幕(现在只显示第一次,然后记住用户),因为该应用程序应该允许不同的用户登录
看起来应该将prompt
请求参数设置为select_account
,但是我不知道应该怎么做,AuthorizeAsync
方法不接受其他任何参数。
答案 0 :(得分:3)
您是正确的,目前无法通过简单的方式来做到这一点。
我已提交了一个错误来解决此问题:https://github.com/googleapis/google-api-dotnet-client/issues/1322