DotNetOpenAuth に取り組んで、認証に Google アプリケーションを使用し、メール アドレスを返すように求めています。
以前のバージョンの DotNetOpenAuth.dll を使用したときに、プログラムが動作していました。しかし、現在のバージョンで Dll を更新すると、コードが壊れます。アプリケーションは認証できますが、電子メール アドレスで応答しません。
私のコードは次のとおりです。
<rp:OpenIdButton runat="server" ImageUrl="~/images/google.jpg" Text="Login with Google" ID="OpenIdButton1"
Identifier="https://www.google.com/accounts/o8/id" LogOnMode="None" OnLoggingIn="test" OnLoggedIn="OpenIdLogin1_LoggedIn">
<Extensions>
<sreg:ClaimsRequest Email="Require" />
</Extensions>
protected void OpenIdLogin1_LoggedIn(object sender, OpenIdEventArgs e)
{
// Hide login button.
OpenIdButton1.Visible = false;
// Get email.
//ClaimsResponse profile = e.Response.GetExtension<ClaimsResponse>();
ClaimsResponse profile = e.Response.GetUntrustedExtension<ClaimsResponse>();
string email = profile.Email;
And the code breaks at the above line.
新しい Dll で何か変更がありましたか?