0

我需要使用弹出窗口进行 Google OAuth 身份验证。我正在使用 DotNetOpenAuth 库进行身份验证,并且它在同一页面上工作。如何在弹出窗口中执行此操作。我通过谷歌搜索环顾四周,发现很少,其中之一是“在 dotnetopenauth 4 中指定请求参数”但是我使用这个库的方式我不知道在哪里可以设置弹出窗口。

这是我的代码。

私有字符串 AccessToken { get { return (string)Session["GoogleAccessToken"]; } 设置 { 会话 [“GoogleAccessToken”] = 值;} }

    private static readonly GoogleClient googleClient = new GoogleClient
    {
        ClientIdentifier = ConfigurationManager.AppSettings["googleConsumerKey"],
        ClientCredentialApplicator = ClientCredentialApplicator.PostParameter(ConfigurationManager.AppSettings["googleConsumerSecret"]),
    }; 

    protected void Page_Load(object sender, EventArgs e)
    {                        
        if (googleClient != null)
        {

            if (!IsPostBack)
            {
                var authorization = googleClient.ProcessUserAuthorization();
                if (authorization != null)
                {
                    this.AccessToken = authorization.AccessToken;
                }
                else if (this.AccessToken == null)
                {
                    googleClient.RequestUserAuthorization(scope: new[] { GoogleClient.Scopes.WebMaster.SiteVerification, GoogleClient.Scopes.WebMaster.WebMasterTools });

                }
            }
        } 
    }


private static readonly AuthorizationServerDescription GoogleDescription = new AuthorizationServerDescription {
    TokenEndpoint = new Uri("https://accounts.google.com/o/oauth2/token"),
    AuthorizationEndpoint = new Uri("https://accounts.google.com/o/oauth2/auth"),   
    ProtocolVersion = ProtocolVersion.V20,            
};

你能帮我解决这个问题吗(我是 ASP.Net 的新手)?谢谢

4

1 回答 1

1

如果您想要一个支持客户端检测的库,包括通过单击按钮打开弹出窗口,您可能需要查看 javascript API:

https://developers.google.com/api-client-library/javascript/features/authentication

于 2013-07-13T05:06:49.473 回答