OpenID和Google托管域

OpenID和Google托管域,openid,Openid,我得到一个“无法解析远程名称:'mine.com'” 使用此开放ID标识符时: 的确,mine.com的DNS记录不存在。但我想知道为什么它一开始就去看那里。我想做的就是检查用户是否可以登录到我们的托管域。这真的很难吗?我正在使用DotNetOpenAuth,这就是我所缺少的 relyingParty.DiscoveryServices.Insert(0,新的DotNetOpenAuth.OpenId.HostMetaDiscoveryService{UseGoogleHostedHostMe

我得到一个“无法解析远程名称:'mine.com'”

使用此开放ID标识符时:


的确,mine.com的DNS记录不存在。但我想知道为什么它一开始就去看那里。我想做的就是检查用户是否可以登录到我们的托管域。这真的很难吗?

我正在使用DotNetOpenAuth,这就是我所缺少的

relyingParty.DiscoveryServices.Insert(0,新的DotNetOpenAuth.OpenId.HostMetaDiscoveryService{UseGoogleHostedHostMeta=true,})

通过将HostMetaDiscoveryService放在首位并允许使用GoogleHostedHostMeta,请求将按预期工作

结果是这样的:

var relyingParty = new OpenIdRelyingParty();
relyingParty.DiscoveryServices.Insert(0, new DotNetOpenAuth.OpenId.HostMetaDiscoveryService { UseGoogleHostedHostMeta = true, });
var response = relyingParty.GetResponse();
if (response == null)
{
    var googleID = "https://www.google.com/accounts/o8/site-xrds?hd=my.domain";
    var request = relyingParty.CreateRequest(googleID);
    request.RedirectToProvider();
}
else
{
    switch (response.Status)
    {
        case AuthenticationStatus.Authenticated:
            break;

        default:
            break;
    }
}